auramaxx 0.0.20 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1099) hide show
  1. package/README.md +92 -53
  2. package/bin/auramaxx.js +114 -92
  3. package/package.json +18 -94
  4. package/src/server/cli/commands/create.ts +20 -24
  5. package/src/server/cli/commands/onboard.ts +18 -2
  6. package/src/server/cli/commands/play.ts +303 -34
  7. package/src/server/cli/lib/theme.ts +58 -0
  8. package/.next/BUILD_ID +0 -1
  9. package/.next/app-build-manifest.json +0 -303
  10. package/.next/app-path-routes-manifest.json +0 -38
  11. package/.next/build-manifest.json +0 -33
  12. package/.next/diagnostics/build-diagnostics.json +0 -6
  13. package/.next/diagnostics/framework.json +0 -1
  14. package/.next/export-marker.json +0 -6
  15. package/.next/images-manifest.json +0 -58
  16. package/.next/next-minimal-server.js.nft.json +0 -1
  17. package/.next/next-server.js.nft.json +0 -1
  18. package/.next/package.json +0 -1
  19. package/.next/prerender-manifest.json +0 -292
  20. package/.next/react-loadable-manifest.json +0 -80
  21. package/.next/required-server-files.json +0 -330
  22. package/.next/routes-manifest.json +0 -209
  23. package/.next/server/app/_not-found/page.js +0 -2
  24. package/.next/server/app/_not-found/page.js.nft.json +0 -1
  25. package/.next/server/app/_not-found/page_client-reference-manifest.js +0 -1
  26. package/.next/server/app/_not-found.html +0 -1
  27. package/.next/server/app/_not-found.meta +0 -8
  28. package/.next/server/app/_not-found.rsc +0 -19
  29. package/.next/server/app/api/[...doc]/page.js +0 -2
  30. package/.next/server/app/api/[...doc]/page.js.nft.json +0 -1
  31. package/.next/server/app/api/[...doc]/page_client-reference-manifest.js +0 -1
  32. package/.next/server/app/api/agent-requests/route.js +0 -1
  33. package/.next/server/app/api/agent-requests/route.js.nft.json +0 -1
  34. package/.next/server/app/api/agent-requests/route_client-reference-manifest.js +0 -1
  35. package/.next/server/app/api/apps/install/route.js +0 -25
  36. package/.next/server/app/api/apps/install/route.js.nft.json +0 -1
  37. package/.next/server/app/api/apps/install/route_client-reference-manifest.js +0 -1
  38. package/.next/server/app/api/apps/manifests/route.js +0 -1
  39. package/.next/server/app/api/apps/manifests/route.js.nft.json +0 -1
  40. package/.next/server/app/api/apps/manifests/route_client-reference-manifest.js +0 -1
  41. package/.next/server/app/api/apps/static/[...path]/route.js +0 -1
  42. package/.next/server/app/api/apps/static/[...path]/route.js.nft.json +0 -1
  43. package/.next/server/app/api/apps/static/[...path]/route_client-reference-manifest.js +0 -1
  44. package/.next/server/app/api/docs/plain/route.js +0 -4
  45. package/.next/server/app/api/docs/plain/route.js.nft.json +0 -1
  46. package/.next/server/app/api/docs/plain/route_client-reference-manifest.js +0 -1
  47. package/.next/server/app/api/events/route.js +0 -1
  48. package/.next/server/app/api/events/route.js.nft.json +0 -1
  49. package/.next/server/app/api/events/route_client-reference-manifest.js +0 -1
  50. package/.next/server/app/api/import-from-openclaw/[channel]/route.js +0 -1
  51. package/.next/server/app/api/import-from-openclaw/[channel]/route.js.nft.json +0 -1
  52. package/.next/server/app/api/import-from-openclaw/[channel]/route_client-reference-manifest.js +0 -1
  53. package/.next/server/app/api/import-from-openclaw/route.js +0 -1
  54. package/.next/server/app/api/import-from-openclaw/route.js.nft.json +0 -1
  55. package/.next/server/app/api/import-from-openclaw/route_client-reference-manifest.js +0 -1
  56. package/.next/server/app/api/import-from-openclaw/validate/[channel]/route.js +0 -1
  57. package/.next/server/app/api/import-from-openclaw/validate/[channel]/route.js.nft.json +0 -1
  58. package/.next/server/app/api/import-from-openclaw/validate/[channel]/route_client-reference-manifest.js +0 -1
  59. package/.next/server/app/api/page.js +0 -2
  60. package/.next/server/app/api/page.js.nft.json +0 -1
  61. package/.next/server/app/api/page_client-reference-manifest.js +0 -1
  62. package/.next/server/app/api/restart/route.js +0 -57
  63. package/.next/server/app/api/restart/route.js.nft.json +0 -1
  64. package/.next/server/app/api/restart/route_client-reference-manifest.js +0 -1
  65. package/.next/server/app/api/update/route.js +0 -94
  66. package/.next/server/app/api/update/route.js.nft.json +0 -1
  67. package/.next/server/app/api/update/route_client-reference-manifest.js +0 -1
  68. package/.next/server/app/api/version/route.js +0 -1
  69. package/.next/server/app/api/version/route.js.nft.json +0 -1
  70. package/.next/server/app/api/version/route_client-reference-manifest.js +0 -1
  71. package/.next/server/app/api/workspace/[id]/apps/[wid]/route.js +0 -1
  72. package/.next/server/app/api/workspace/[id]/apps/[wid]/route.js.nft.json +0 -1
  73. package/.next/server/app/api/workspace/[id]/apps/[wid]/route_client-reference-manifest.js +0 -1
  74. package/.next/server/app/api/workspace/[id]/apps/route.js +0 -1
  75. package/.next/server/app/api/workspace/[id]/apps/route.js.nft.json +0 -1
  76. package/.next/server/app/api/workspace/[id]/apps/route_client-reference-manifest.js +0 -1
  77. package/.next/server/app/api/workspace/[id]/export/route.js +0 -1
  78. package/.next/server/app/api/workspace/[id]/export/route.js.nft.json +0 -1
  79. package/.next/server/app/api/workspace/[id]/export/route_client-reference-manifest.js +0 -1
  80. package/.next/server/app/api/workspace/[id]/route.js +0 -1
  81. package/.next/server/app/api/workspace/[id]/route.js.nft.json +0 -1
  82. package/.next/server/app/api/workspace/[id]/route_client-reference-manifest.js +0 -1
  83. package/.next/server/app/api/workspace/config/route.js +0 -1
  84. package/.next/server/app/api/workspace/config/route.js.nft.json +0 -1
  85. package/.next/server/app/api/workspace/config/route_client-reference-manifest.js +0 -1
  86. package/.next/server/app/api/workspace/import/route.js +0 -1
  87. package/.next/server/app/api/workspace/import/route.js.nft.json +0 -1
  88. package/.next/server/app/api/workspace/import/route_client-reference-manifest.js +0 -1
  89. package/.next/server/app/api/workspace/route.js +0 -1
  90. package/.next/server/app/api/workspace/route.js.nft.json +0 -1
  91. package/.next/server/app/api/workspace/route_client-reference-manifest.js +0 -1
  92. package/.next/server/app/app-legacy-do-not-use/page.js +0 -17
  93. package/.next/server/app/app-legacy-do-not-use/page.js.nft.json +0 -1
  94. package/.next/server/app/app-legacy-do-not-use/page_client-reference-manifest.js +0 -1
  95. package/.next/server/app/app-legacy-do-not-use.html +0 -1
  96. package/.next/server/app/app-legacy-do-not-use.meta +0 -7
  97. package/.next/server/app/app-legacy-do-not-use.rsc +0 -23
  98. package/.next/server/app/apple-icon.png/route.js +0 -1
  99. package/.next/server/app/apple-icon.png/route.js.nft.json +0 -1
  100. package/.next/server/app/apple-icon.png.body +0 -0
  101. package/.next/server/app/apple-icon.png.meta +0 -1
  102. package/.next/server/app/approve/[actionId]/page.js +0 -2
  103. package/.next/server/app/approve/[actionId]/page.js.nft.json +0 -1
  104. package/.next/server/app/approve/[actionId]/page_client-reference-manifest.js +0 -1
  105. package/.next/server/app/docs/[...doc]/page.js +0 -2
  106. package/.next/server/app/docs/[...doc]/page.js.nft.json +0 -1
  107. package/.next/server/app/docs/[...doc]/page_client-reference-manifest.js +0 -1
  108. package/.next/server/app/docs/page.js +0 -2
  109. package/.next/server/app/docs/page.js.nft.json +0 -1
  110. package/.next/server/app/docs/page_client-reference-manifest.js +0 -1
  111. package/.next/server/app/favicon.ico/route.js +0 -1
  112. package/.next/server/app/favicon.ico/route.js.nft.json +0 -1
  113. package/.next/server/app/favicon.ico.body +0 -0
  114. package/.next/server/app/favicon.ico.meta +0 -1
  115. package/.next/server/app/health/page.js +0 -2
  116. package/.next/server/app/health/page.js.nft.json +0 -1
  117. package/.next/server/app/health/page_client-reference-manifest.js +0 -1
  118. package/.next/server/app/health.html +0 -1
  119. package/.next/server/app/health.meta +0 -7
  120. package/.next/server/app/health.rsc +0 -20
  121. package/.next/server/app/hello/page.js +0 -2
  122. package/.next/server/app/hello/page.js.nft.json +0 -1
  123. package/.next/server/app/hello/page_client-reference-manifest.js +0 -1
  124. package/.next/server/app/hello.html +0 -1
  125. package/.next/server/app/hello.meta +0 -7
  126. package/.next/server/app/hello.rsc +0 -23
  127. package/.next/server/app/icon.png/route.js +0 -1
  128. package/.next/server/app/icon.png/route.js.nft.json +0 -1
  129. package/.next/server/app/icon.png.body +0 -0
  130. package/.next/server/app/icon.png.meta +0 -1
  131. package/.next/server/app/index.html +0 -1
  132. package/.next/server/app/index.meta +0 -7
  133. package/.next/server/app/index.rsc +0 -20
  134. package/.next/server/app/page.js +0 -14
  135. package/.next/server/app/page.js.nft.json +0 -1
  136. package/.next/server/app/page_client-reference-manifest.js +0 -1
  137. package/.next/server/app/privacy/page.js +0 -2
  138. package/.next/server/app/privacy/page.js.nft.json +0 -1
  139. package/.next/server/app/privacy/page_client-reference-manifest.js +0 -1
  140. package/.next/server/app/privacy.html +0 -1
  141. package/.next/server/app/privacy.meta +0 -7
  142. package/.next/server/app/privacy.rsc +0 -24
  143. package/.next/server/app/share/[token]/page.js +0 -2
  144. package/.next/server/app/share/[token]/page.js.nft.json +0 -1
  145. package/.next/server/app/share/[token]/page_client-reference-manifest.js +0 -1
  146. package/.next/server/app/terms/page.js +0 -2
  147. package/.next/server/app/terms/page.js.nft.json +0 -1
  148. package/.next/server/app/terms/page_client-reference-manifest.js +0 -1
  149. package/.next/server/app/terms.html +0 -1
  150. package/.next/server/app/terms.meta +0 -7
  151. package/.next/server/app/terms.rsc +0 -24
  152. package/.next/server/app/yo/page.js +0 -2
  153. package/.next/server/app/yo/page.js.nft.json +0 -1
  154. package/.next/server/app/yo/page_client-reference-manifest.js +0 -1
  155. package/.next/server/app/yo.html +0 -1
  156. package/.next/server/app/yo.meta +0 -7
  157. package/.next/server/app/yo.rsc +0 -23
  158. package/.next/server/app-paths-manifest.json +0 -38
  159. package/.next/server/chunks/1194.js +0 -4
  160. package/.next/server/chunks/1196.js +0 -1
  161. package/.next/server/chunks/1331.js +0 -22
  162. package/.next/server/chunks/1503.js +0 -2
  163. package/.next/server/chunks/1644.js +0 -1
  164. package/.next/server/chunks/1692.js +0 -1
  165. package/.next/server/chunks/2123.js +0 -59
  166. package/.next/server/chunks/2145.js +0 -1
  167. package/.next/server/chunks/2234.js +0 -1
  168. package/.next/server/chunks/2269.js +0 -1
  169. package/.next/server/chunks/2395.js +0 -9
  170. package/.next/server/chunks/2945.js +0 -1
  171. package/.next/server/chunks/335.js +0 -1
  172. package/.next/server/chunks/372.js +0 -1
  173. package/.next/server/chunks/4224.js +0 -1
  174. package/.next/server/chunks/4337.js +0 -1
  175. package/.next/server/chunks/4600.js +0 -1
  176. package/.next/server/chunks/4697.js +0 -1
  177. package/.next/server/chunks/5347.js +0 -1
  178. package/.next/server/chunks/5482.js +0 -1
  179. package/.next/server/chunks/5611.js +0 -6
  180. package/.next/server/chunks/5678.js +0 -4
  181. package/.next/server/chunks/5784.js +0 -1
  182. package/.next/server/chunks/5991.js +0 -7
  183. package/.next/server/chunks/6086.js +0 -2
  184. package/.next/server/chunks/6470.js +0 -1
  185. package/.next/server/chunks/6572.js +0 -59
  186. package/.next/server/chunks/7585.js +0 -1
  187. package/.next/server/chunks/7935.js +0 -101
  188. package/.next/server/chunks/8011.js +0 -1
  189. package/.next/server/chunks/8468.js +0 -1
  190. package/.next/server/chunks/9323.js +0 -8
  191. package/.next/server/chunks/9971.js +0 -1
  192. package/.next/server/functions-config-manifest.json +0 -8
  193. package/.next/server/instrumentation.js +0 -1
  194. package/.next/server/instrumentation.js.nft.json +0 -1
  195. package/.next/server/interception-route-rewrite-manifest.js +0 -1
  196. package/.next/server/middleware-build-manifest.js +0 -1
  197. package/.next/server/middleware-manifest.json +0 -6
  198. package/.next/server/middleware-react-loadable-manifest.js +0 -1
  199. package/.next/server/next-font-manifest.js +0 -1
  200. package/.next/server/next-font-manifest.json +0 -1
  201. package/.next/server/pages/404.html +0 -1
  202. package/.next/server/pages/500.html +0 -1
  203. package/.next/server/pages/_app.js +0 -1
  204. package/.next/server/pages/_app.js.nft.json +0 -1
  205. package/.next/server/pages/_document.js +0 -1
  206. package/.next/server/pages/_document.js.nft.json +0 -1
  207. package/.next/server/pages/_error.js +0 -19
  208. package/.next/server/pages/_error.js.nft.json +0 -1
  209. package/.next/server/pages-manifest.json +0 -6
  210. package/.next/server/server-reference-manifest.js +0 -1
  211. package/.next/server/server-reference-manifest.json +0 -1
  212. package/.next/server/webpack-runtime.js +0 -1
  213. package/.next/static/chunks/1168.bb1c93965872e980.js +0 -1
  214. package/.next/static/chunks/1255-7999eac54f80a49f.js +0 -1
  215. package/.next/static/chunks/142-fa9752f53a551f63.js +0 -1
  216. package/.next/static/chunks/2505.d54ccadc42f4e3d1.js +0 -1
  217. package/.next/static/chunks/2619-04bc32f026a0d946.js +0 -1
  218. package/.next/static/chunks/2891-bf010357841c9ce9.js +0 -1
  219. package/.next/static/chunks/2927.3976471e61df966e.js +0 -1
  220. package/.next/static/chunks/3573-667bc4c8f56afcff.js +0 -1
  221. package/.next/static/chunks/3609.ded5a5306e18af9c.js +0 -1
  222. package/.next/static/chunks/3826.a73d4a88d8c09030.js +0 -1
  223. package/.next/static/chunks/3a91511d-da2c74cad6c6fc33.js +0 -7
  224. package/.next/static/chunks/4114-a375178fd94c4d8a.js +0 -1
  225. package/.next/static/chunks/4256.aa831e4d8c3f65bc.js +0 -1
  226. package/.next/static/chunks/4901-ba6a32818662e70a.js +0 -1
  227. package/.next/static/chunks/4919-0e698cd95504e355.js +0 -1
  228. package/.next/static/chunks/4bd1b696-100b9d70ed4e49c1.js +0 -1
  229. package/.next/static/chunks/5336-b775f449d7433604.js +0 -1
  230. package/.next/static/chunks/5362-2e8fcdd0bc6273ca.js +0 -59
  231. package/.next/static/chunks/6233-97a810aa272af547.js +0 -1
  232. package/.next/static/chunks/626.a5109d16f9eca1f6.js +0 -1
  233. package/.next/static/chunks/67-cb9bbb430499e803.js +0 -1
  234. package/.next/static/chunks/7616-1129bcb3eee8d315.js +0 -1
  235. package/.next/static/chunks/786-26deffb41572cbb3.js +0 -1
  236. package/.next/static/chunks/8273-3b9d882c5dd6a9a8.js +0 -1
  237. package/.next/static/chunks/8291-8f6fb6554e692552.js +0 -1
  238. package/.next/static/chunks/8357.5dee1e0c4e5bb091.js +0 -1
  239. package/.next/static/chunks/8370-6537b6b27df58b23.js +0 -1
  240. package/.next/static/chunks/9062-2bc2d089f9c9c6ba.js +0 -1
  241. package/.next/static/chunks/9380.f198afbf0c6b5369.js +0 -1
  242. package/.next/static/chunks/app/_not-found/page-5a8c6a29f762fa58.js +0 -1
  243. package/.next/static/chunks/app/api/[...doc]/page-f0852f35f0fd1d44.js +0 -1
  244. package/.next/static/chunks/app/api/agent-requests/route-cf84f975aad4c719.js +0 -1
  245. package/.next/static/chunks/app/api/apps/install/route-cf84f975aad4c719.js +0 -1
  246. package/.next/static/chunks/app/api/apps/manifests/route-cf84f975aad4c719.js +0 -1
  247. package/.next/static/chunks/app/api/apps/static/[...path]/route-cf84f975aad4c719.js +0 -1
  248. package/.next/static/chunks/app/api/docs/plain/route-cf84f975aad4c719.js +0 -1
  249. package/.next/static/chunks/app/api/events/route-cf84f975aad4c719.js +0 -1
  250. package/.next/static/chunks/app/api/import-from-openclaw/[channel]/route-cf84f975aad4c719.js +0 -1
  251. package/.next/static/chunks/app/api/import-from-openclaw/route-cf84f975aad4c719.js +0 -1
  252. package/.next/static/chunks/app/api/import-from-openclaw/validate/[channel]/route-cf84f975aad4c719.js +0 -1
  253. package/.next/static/chunks/app/api/page-cc59bebcc0d2c01d.js +0 -1
  254. package/.next/static/chunks/app/api/restart/route-cf84f975aad4c719.js +0 -1
  255. package/.next/static/chunks/app/api/update/route-cf84f975aad4c719.js +0 -1
  256. package/.next/static/chunks/app/api/version/route-cf84f975aad4c719.js +0 -1
  257. package/.next/static/chunks/app/api/workspace/[id]/apps/[wid]/route-cf84f975aad4c719.js +0 -1
  258. package/.next/static/chunks/app/api/workspace/[id]/apps/route-cf84f975aad4c719.js +0 -1
  259. package/.next/static/chunks/app/api/workspace/[id]/export/route-cf84f975aad4c719.js +0 -1
  260. package/.next/static/chunks/app/api/workspace/[id]/route-cf84f975aad4c719.js +0 -1
  261. package/.next/static/chunks/app/api/workspace/config/route-cf84f975aad4c719.js +0 -1
  262. package/.next/static/chunks/app/api/workspace/import/route-cf84f975aad4c719.js +0 -1
  263. package/.next/static/chunks/app/api/workspace/route-cf84f975aad4c719.js +0 -1
  264. package/.next/static/chunks/app/app-legacy-do-not-use/page-efa348da049c5873.js +0 -1
  265. package/.next/static/chunks/app/approve/[actionId]/page-c862645e19371cea.js +0 -1
  266. package/.next/static/chunks/app/docs/[...doc]/page-8e2a2d036caab242.js +0 -1
  267. package/.next/static/chunks/app/docs/page-acf872a03ff79893.js +0 -1
  268. package/.next/static/chunks/app/error-04a18fd49a89ee17.js +0 -1
  269. package/.next/static/chunks/app/health/page-c9185854ed9c86d0.js +0 -1
  270. package/.next/static/chunks/app/hello/page-74c9f4deaa4b03dd.js +0 -1
  271. package/.next/static/chunks/app/layout-7093dda0d106f34d.js +0 -1
  272. package/.next/static/chunks/app/page-0ec7cf48550f71e6.js +0 -1
  273. package/.next/static/chunks/app/privacy/page-8e2d17079355c2cc.js +0 -1
  274. package/.next/static/chunks/app/share/[token]/page-5dd9b0418eee411f.js +0 -1
  275. package/.next/static/chunks/app/terms/page-8e2d17079355c2cc.js +0 -1
  276. package/.next/static/chunks/app/yo/layout-cf84f975aad4c719.js +0 -1
  277. package/.next/static/chunks/app/yo/page-48930746b135037e.js +0 -1
  278. package/.next/static/chunks/framework-a32a2a465584c0bc.js +0 -1
  279. package/.next/static/chunks/main-0f0f9142f74e7215.js +0 -1
  280. package/.next/static/chunks/main-app-24f0c92ba10af457.js +0 -1
  281. package/.next/static/chunks/pages/_app-4b3fb5e477a0267f.js +0 -1
  282. package/.next/static/chunks/pages/_error-c970d8b55ace1b48.js +0 -1
  283. package/.next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  284. package/.next/static/chunks/webpack-15ec0114c9d658c2.js +0 -1
  285. package/.next/static/css/35991998d1b5eff0.css +0 -3
  286. package/.next/static/q3rrQEmg9jZ5Lt-BCTiTK/_buildManifest.js +0 -1
  287. package/.next/static/q3rrQEmg9jZ5Lt-BCTiTK/_ssgManifest.js +0 -1
  288. package/.next/trace +0 -28
  289. package/.next/types/app/api/[...doc]/page.ts +0 -84
  290. package/.next/types/app/api/agent-requests/route.ts +0 -347
  291. package/.next/types/app/api/apps/install/route.ts +0 -347
  292. package/.next/types/app/api/apps/manifests/route.ts +0 -347
  293. package/.next/types/app/api/apps/static/[...path]/route.ts +0 -347
  294. package/.next/types/app/api/docs/plain/route.ts +0 -347
  295. package/.next/types/app/api/events/route.ts +0 -347
  296. package/.next/types/app/api/import-from-openclaw/[channel]/route.ts +0 -347
  297. package/.next/types/app/api/import-from-openclaw/route.ts +0 -347
  298. package/.next/types/app/api/import-from-openclaw/validate/[channel]/route.ts +0 -347
  299. package/.next/types/app/api/restart/route.ts +0 -347
  300. package/.next/types/app/api/update/route.ts +0 -347
  301. package/.next/types/app/api/version/route.ts +0 -347
  302. package/.next/types/app/api/workspace/[id]/apps/[wid]/route.ts +0 -347
  303. package/.next/types/app/api/workspace/[id]/apps/route.ts +0 -347
  304. package/.next/types/app/api/workspace/[id]/export/route.ts +0 -347
  305. package/.next/types/app/api/workspace/[id]/route.ts +0 -347
  306. package/.next/types/app/api/workspace/config/route.ts +0 -347
  307. package/.next/types/app/api/workspace/import/route.ts +0 -347
  308. package/.next/types/app/api/workspace/route.ts +0 -347
  309. package/.next/types/app/app-legacy-do-not-use/page.ts +0 -84
  310. package/.next/types/app/approve/[actionId]/page.ts +0 -84
  311. package/.next/types/app/docs/[...doc]/page.ts +0 -84
  312. package/.next/types/app/docs/page.ts +0 -84
  313. package/.next/types/app/health/page.ts +0 -84
  314. package/.next/types/app/hello/page.ts +0 -84
  315. package/.next/types/app/page.ts +0 -84
  316. package/.next/types/app/privacy/page.ts +0 -84
  317. package/.next/types/app/share/[token]/page.ts +0 -84
  318. package/.next/types/app/terms/page.ts +0 -84
  319. package/.next/types/app/yo/layout.ts +0 -84
  320. package/.next/types/app/yo/page.ts +0 -84
  321. package/.next/types/cache-life.d.ts +0 -141
  322. package/.next/types/package.json +0 -1
  323. package/.next/types/routes.d.ts +0 -105
  324. package/.next/types/validator.ts +0 -358
  325. package/apps/desktop-electron/main.js +0 -428
  326. package/docs/README.md +0 -38
  327. package/docs/ai-agents-workflow/API.md +0 -127
  328. package/docs/ai-agents-workflow/AUTH.md +0 -460
  329. package/docs/ai-agents-workflow/BEST-PRACTICES.md +0 -82
  330. package/docs/ai-agents-workflow/CLI.md +0 -189
  331. package/docs/ai-agents-workflow/MCP.md +0 -223
  332. package/docs/ai-agents-workflow/POLICY.md +0 -194
  333. package/docs/ai-agents-workflow/SKILLS.md +0 -135
  334. package/docs/ai-agents-workflow/credentials.md +0 -122
  335. package/docs/api/authentication.md +0 -80
  336. package/docs/api/secrets/api-keys.md +0 -28
  337. package/docs/api/secrets/credentials.md +0 -88
  338. package/docs/api/secrets/sharing.md +0 -48
  339. package/docs/api/system.md +0 -42
  340. package/docs/api/wallets/apps-strategies.md +0 -66
  341. package/docs/api/wallets/core.md +0 -46
  342. package/docs/api/wallets/data-portfolio.md +0 -42
  343. package/docs/how-to-auramaxx/TROUBLESHOOTING.md +0 -477
  344. package/docs/how-to-auramaxx/WORKING_WITH_SECRETS.md +0 -96
  345. package/docs/how-to-auramaxx/share-secret.md +0 -74
  346. package/docs/legacy/ADAPTERS.md +0 -471
  347. package/docs/legacy/APPS.md +0 -199
  348. package/docs/legacy/DESKTOP_ELECTRON.md +0 -26
  349. package/docs/legacy/DEVELOPING-APPS.md +0 -453
  350. package/docs/legacy/PACKAGING_POLICY.md +0 -19
  351. package/docs/legacy/PERMISSION.md +0 -138
  352. package/docs/legacy/PROTOCOL.md +0 -142
  353. package/docs/legacy/README.md +0 -21
  354. package/docs/legacy/WORKSPACE.md +0 -673
  355. package/docs/legacy/agent-auth.md +0 -13
  356. package/docs/legacy/aura-file.md +0 -48
  357. package/docs/legacy/external/HOW_TO_AURAMAXX/README.md +0 -45
  358. package/docs/legacy/external/README.md +0 -7
  359. package/docs/legacy/external/getting-started.md +0 -10
  360. package/docs/legacy/external/overview.md +0 -19
  361. package/docs/legacy/external/persona-paths.md +0 -7
  362. package/docs/legacy/external/why-aura.md +0 -7
  363. package/docs/legacy/specs/README.md +0 -6
  364. package/docs/legacy/specs/aura-open-protocol.md +0 -61
  365. package/docs/legacy/specs/aura-provider-plugin.md +0 -24
  366. package/docs/legacy/specs/aura-registry-model.md +0 -31
  367. package/docs/legacy/specs/fixtures/invalid-bad-key.aura +0 -1
  368. package/docs/legacy/specs/fixtures/invalid-bad-unicode-escape.aura +0 -1
  369. package/docs/legacy/specs/fixtures/invalid-duplicate-key.aura +0 -2
  370. package/docs/legacy/specs/fixtures/valid-basic.aura +0 -4
  371. package/docs/legacy/specs/fixtures/valid-provider-ref.aura +0 -1
  372. package/docs/legacy/specs/fixtures/valid-quoted-escapes.aura +0 -2
  373. package/docs/legacy/specs/task-256-create-edit-ui.md +0 -65
  374. package/docs/legacy/templates/README.md +0 -3
  375. package/docs/legacy/templates/RELEASE_NOTES_TEMPLATE.md +0 -22
  376. package/docs/legacy/wallet/AI.md +0 -508
  377. package/docs/legacy/wallet/DEVELOPING-STRATEGIES.md +0 -713
  378. package/docs/legacy/wallet/README.md +0 -47
  379. package/docs/legacy/wallet/STRATEGY.md +0 -89
  380. package/docs/quickstart/AGENT_SETUP.md +0 -181
  381. package/docs/why-auramaxx/ARCHITECTURE.md +0 -248
  382. package/docs/why-auramaxx/FEATURES.md +0 -117
  383. package/docs/why-auramaxx/security.md +0 -362
  384. package/next.config.ts +0 -38
  385. package/postcss.config.mjs +0 -8
  386. package/prisma/migrations/20260214170000_baseline/migration.sql +0 -511
  387. package/prisma/migrations/20260216214537_add_passkey_model/migration.sql +0 -18
  388. package/prisma/migrations/20260217150500_add_credential_access_audit/migration.sql +0 -31
  389. package/prisma/migrations/20260222090000_update_admin_ttl_default/migration.sql +0 -10
  390. package/prisma/migrations/20260227214000_update_agent_action_ttl_defaults/migration.sql +0 -19
  391. package/prisma/migrations/20260301225214_social_tables/migration.sql +0 -81
  392. package/prisma/migrations/20260302120000_add_notification_hash/migration.sql +0 -8
  393. package/prisma/migrations/20260302160000_add_public_key_hex/migration.sql +0 -5
  394. package/prisma/migrations/20260302170000_add_inbound_author_public_key/migration.sql +0 -5
  395. package/prisma/migrations/migration_lock.toml +0 -3
  396. package/prisma/schema.prisma +0 -542
  397. package/public/0a167e5e-4f52-4715-ae23-bf63d259a6b1.png +0 -0
  398. package/public/141ec92c-6780-4b23-838f-9a7bf1e91bb8.png +0 -0
  399. package/public/3afc4935-92cb-42af-9624-0b1341c12a5e.png +0 -0
  400. package/public/43947df5-dbcf-4e49-ab8b-41b9162c0410.png +0 -0
  401. package/public/5aeae9ce-0d38-49ea-8fd1-167892a04a85.png +0 -0
  402. package/public/660e4ea3-a3a6-4be4-a8ca-2cb74c51dfb5.png +0 -0
  403. package/public/733f02d7-6b58-4ba6-a5c8-d062cd205e1d.png +0 -0
  404. package/public/README.png +0 -0
  405. package/public/a32d65cb-95b0-4977-be6b-cf69f515afbe.png +0 -0
  406. package/public/agent1.png +0 -0
  407. package/public/agent10.png +0 -0
  408. package/public/agent2.png +0 -0
  409. package/public/agent3.png +0 -0
  410. package/public/agent4.png +0 -0
  411. package/public/agent5.png +0 -0
  412. package/public/agent6.png +0 -0
  413. package/public/agent7.png +0 -0
  414. package/public/agent8.png +0 -0
  415. package/public/agent9.png +0 -0
  416. package/public/c4938305-b811-4ccc-91db-94d309734827.png +0 -0
  417. package/public/f2ca6825-a4f3-4107-815c-51ee740dfc09.png +0 -0
  418. package/public/install.ps1 +0 -10
  419. package/public/install.sh +0 -11
  420. package/public/llm.txt +0 -2
  421. package/public/llms.txt +0 -39
  422. package/public/logo.webp +0 -0
  423. package/public/opengraph.webp +0 -0
  424. package/public/ss-dark1.png +0 -0
  425. package/public/ss-dark1.webp +0 -0
  426. package/public/ss-dark2.png +0 -0
  427. package/public/ss-dark2.webp +0 -0
  428. package/public/ss-dark3.png +0 -0
  429. package/public/ss-dark3.webp +0 -0
  430. package/public/ss-light1.png +0 -0
  431. package/public/ss-light1.webp +0 -0
  432. package/public/ss-light2.png +0 -0
  433. package/public/ss-light2.webp +0 -0
  434. package/public/ss-light3.png +0 -0
  435. package/public/ss-light3.webp +0 -0
  436. package/scripts/add-app.js +0 -245
  437. package/shared/credential-field-schema.ts +0 -270
  438. package/skills/auramaxx/HEARTBEAT.md +0 -97
  439. package/skills/auramaxx/SKILL.md +0 -136
  440. package/skills/auramaxx/docs/AGENT_SETUP.md +0 -160
  441. package/skills/auramaxx/docs/API.md +0 -127
  442. package/skills/auramaxx/docs/AUTH.md +0 -318
  443. package/skills/auramaxx/docs/CLI.md +0 -130
  444. package/skills/auramaxx/docs/MCP.md +0 -192
  445. package/skills/auramaxx/docs/TROUBLESHOOTING.md +0 -357
  446. package/skills/auramaxx/docs/WORKSPACE.md +0 -673
  447. package/skills/auramaxx/docs/security.md +0 -227
  448. package/skills/task-lifecycle/SKILL.md +0 -366
  449. package/src/app/UnlockPageClient.tsx +0 -2344
  450. package/src/app/api/[...doc]/page.tsx +0 -36
  451. package/src/app/api/agent-requests/route.ts +0 -30
  452. package/src/app/api/apps/install/route.ts +0 -132
  453. package/src/app/api/apps/manifests/route.ts +0 -16
  454. package/src/app/api/apps/static/[...path]/route.ts +0 -57
  455. package/src/app/api/docs/plain/route.ts +0 -74
  456. package/src/app/api/events/route.ts +0 -92
  457. package/src/app/api/import-from-openclaw/[channel]/route.ts +0 -62
  458. package/src/app/api/import-from-openclaw/lib.ts +0 -672
  459. package/src/app/api/import-from-openclaw/route.ts +0 -88
  460. package/src/app/api/import-from-openclaw/validate/[channel]/route.ts +0 -88
  461. package/src/app/api/page.tsx +0 -299
  462. package/src/app/api/restart/route.ts +0 -111
  463. package/src/app/api/update/route.ts +0 -268
  464. package/src/app/api/version/route.ts +0 -79
  465. package/src/app/api/workspace/[id]/apps/[wid]/route.ts +0 -119
  466. package/src/app/api/workspace/[id]/apps/route.ts +0 -81
  467. package/src/app/api/workspace/[id]/export/route.ts +0 -67
  468. package/src/app/api/workspace/[id]/route.ts +0 -168
  469. package/src/app/api/workspace/auth.ts +0 -40
  470. package/src/app/api/workspace/config/route.ts +0 -121
  471. package/src/app/api/workspace/import/route.ts +0 -127
  472. package/src/app/api/workspace/route.ts +0 -116
  473. package/src/app/app-legacy-do-not-use/page.tsx +0 -2247
  474. package/src/app/apple-icon.png +0 -0
  475. package/src/app/approve/[actionId]/page.tsx +0 -428
  476. package/src/app/docs/DocsPageContent.tsx +0 -283
  477. package/src/app/docs/[...doc]/page.tsx +0 -41
  478. package/src/app/docs/page.tsx +0 -38
  479. package/src/app/error.tsx +0 -125
  480. package/src/app/favicon.ico +0 -0
  481. package/src/app/globals.css +0 -940
  482. package/src/app/health/page.tsx +0 -5
  483. package/src/app/hello/page.tsx +0 -102
  484. package/src/app/icon.png +0 -0
  485. package/src/app/layout.tsx +0 -40
  486. package/src/app/page.tsx +0 -38
  487. package/src/app/privacy/page.tsx +0 -63
  488. package/src/app/providers.tsx +0 -87
  489. package/src/app/share/[token]/page.tsx +0 -295
  490. package/src/app/terms/page.tsx +0 -80
  491. package/src/app/yo/layout.tsx +0 -38
  492. package/src/app/yo/page.tsx +0 -614
  493. package/src/components/AgentPicker.tsx +0 -278
  494. package/src/components/ChainSelector.tsx +0 -44
  495. package/src/components/CreateAgentModal.tsx +0 -192
  496. package/src/components/HumanActionBar.tsx +0 -865
  497. package/src/components/NotificationDrawer.tsx +0 -455
  498. package/src/components/PasskeyEnrollmentPrompt.tsx +0 -974
  499. package/src/components/UpdateBanner.tsx +0 -171
  500. package/src/components/agent/AgentSidebar.tsx +0 -921
  501. package/src/components/agent/ApiKeysConsole.tsx +0 -1272
  502. package/src/components/agent/AuditConsole.tsx +0 -600
  503. package/src/components/agent/CredentialAgent.tsx +0 -1718
  504. package/src/components/agent/CredentialDetail.tsx +0 -710
  505. package/src/components/agent/CredentialEmpty.tsx +0 -55
  506. package/src/components/agent/CredentialField.tsx +0 -594
  507. package/src/components/agent/CredentialForm.tsx +0 -1867
  508. package/src/components/agent/CredentialList.tsx +0 -299
  509. package/src/components/agent/CredentialRow.tsx +0 -138
  510. package/src/components/agent/CredentialShareModal.tsx +0 -285
  511. package/src/components/agent/CredentialWalletWidget.tsx +0 -103
  512. package/src/components/agent/DocsConsole.tsx +0 -113
  513. package/src/components/agent/ImportCredentialsModal.tsx +0 -578
  514. package/src/components/agent/LargeTypeModal.tsx +0 -88
  515. package/src/components/agent/PasswordGenerator.tsx +0 -232
  516. package/src/components/agent/TOTPDisplay.tsx +0 -108
  517. package/src/components/agent/TotpSetupPanel.tsx +0 -198
  518. package/src/components/agent/credentialDisplayName.ts +0 -42
  519. package/src/components/agent/credentialFormName.ts +0 -150
  520. package/src/components/agent/credentialListSort.ts +0 -56
  521. package/src/components/agent/hooks/useAgentKeyboardShortcuts.ts +0 -69
  522. package/src/components/agent/types.ts +0 -56
  523. package/src/components/agents/AgentsView.tsx +0 -1035
  524. package/src/components/apps/AgentKeysApp.tsx +0 -490
  525. package/src/components/apps/App.tsx +0 -153
  526. package/src/components/apps/AppGrid.tsx +0 -15
  527. package/src/components/apps/DetailedAddressDrawer.tsx +0 -325
  528. package/src/components/apps/DraggableApp.tsx +0 -562
  529. package/src/components/apps/IFrameApp.tsx +0 -73
  530. package/src/components/apps/LogsApp.tsx +0 -360
  531. package/src/components/apps/SendApp.tsx +0 -394
  532. package/src/components/apps/SetupWizardApp.tsx +0 -1004
  533. package/src/components/apps/SystemDefaultsApp.tsx +0 -845
  534. package/src/components/apps/ThirdPartyApp.tsx +0 -428
  535. package/src/components/apps/TokenApp.tsx +0 -319
  536. package/src/components/apps/TransactionsApp.tsx +0 -438
  537. package/src/components/apps/WalletDetailApp.tsx +0 -1505
  538. package/src/components/apps/index.ts +0 -13
  539. package/src/components/design-system/Button.tsx +0 -88
  540. package/src/components/design-system/ChainIndicator.tsx +0 -65
  541. package/src/components/design-system/ChainSelector.tsx +0 -147
  542. package/src/components/design-system/ConfirmationModal.tsx +0 -107
  543. package/src/components/design-system/ConfirmationPopover.tsx +0 -81
  544. package/src/components/design-system/DownloadButton.tsx +0 -149
  545. package/src/components/design-system/Drawer.tsx +0 -133
  546. package/src/components/design-system/FilterDropdown.tsx +0 -183
  547. package/src/components/design-system/ItemPicker.tsx +0 -157
  548. package/src/components/design-system/Modal.tsx +0 -314
  549. package/src/components/design-system/Popover.tsx +0 -142
  550. package/src/components/design-system/TextAreaInput.tsx +0 -78
  551. package/src/components/design-system/TextInput.tsx +0 -85
  552. package/src/components/design-system/Toggle.tsx +0 -65
  553. package/src/components/design-system/TyvekCollapsibleSection.tsx +0 -55
  554. package/src/components/design-system/index.ts +0 -15
  555. package/src/components/docs/ClientSideMarkdown.tsx +0 -51
  556. package/src/components/docs/DocsSearchBar.tsx +0 -118
  557. package/src/components/docs/DocsThemeToggle.tsx +0 -38
  558. package/src/components/docs/PersistentDocGroup.tsx +0 -91
  559. package/src/components/docs/ShareUrlButton.tsx +0 -33
  560. package/src/components/docs/SidebarScrollMemory.tsx +0 -56
  561. package/src/components/health/CredentialHealthDashboard.tsx +0 -214
  562. package/src/components/hub/HubView.tsx +0 -58
  563. package/src/components/icons/ChainIcons.tsx +0 -72
  564. package/src/components/layout/AppStoreDrawer.tsx +0 -369
  565. package/src/components/layout/ContentArea.tsx +0 -21
  566. package/src/components/layout/CreateViewModal.tsx +0 -88
  567. package/src/components/layout/LeftRail.tsx +0 -407
  568. package/src/components/layout/SettingsDrawer.tsx +0 -1200
  569. package/src/components/layout/TabBar.tsx +0 -284
  570. package/src/components/layout/ViewShell.tsx +0 -125
  571. package/src/components/layout/WalletSidebar.tsx +0 -1043
  572. package/src/components/layout/index.ts +0 -7
  573. package/src/components/marketing/AuraMaxxSpecOverlay.tsx +0 -653
  574. package/src/components/marketing/DeviceMorphExperience.tsx +0 -216
  575. package/src/components/social/PrimaryHubRegistrationGate.tsx +0 -260
  576. package/src/components/social/SocialView.tsx +0 -904
  577. package/src/context/AuthContext.tsx +0 -365
  578. package/src/context/PriceContext.tsx +0 -113
  579. package/src/context/ThemeContext.tsx +0 -164
  580. package/src/context/WebSocketContext.tsx +0 -269
  581. package/src/context/WorkspaceContext.tsx +0 -668
  582. package/src/hooks/index.ts +0 -4
  583. package/src/hooks/useAgentActions.ts +0 -552
  584. package/src/hooks/useBalance.ts +0 -103
  585. package/src/hooks/useBalances.ts +0 -129
  586. package/src/hooks/useSocialNotifications.ts +0 -123
  587. package/src/hooks/useTheme.ts +0 -156
  588. package/src/hooks/useUpdateChecker.ts +0 -245
  589. package/src/instrumentation.ts +0 -12
  590. package/src/lib/agent-crypto.ts +0 -129
  591. package/src/lib/api-docs.ts +0 -158
  592. package/src/lib/api.ts +0 -474
  593. package/src/lib/app-loader.ts +0 -148
  594. package/src/lib/app-registry.ts +0 -178
  595. package/src/lib/app-sdk.ts +0 -157
  596. package/src/lib/audit-console-adapter.ts +0 -151
  597. package/src/lib/auth-client.ts +0 -75
  598. package/src/lib/config.ts +0 -74
  599. package/src/lib/credential-field-schema.ts +0 -11
  600. package/src/lib/crypto.ts +0 -112
  601. package/src/lib/db.ts +0 -21
  602. package/src/lib/docs.ts +0 -617
  603. package/src/lib/events.ts +0 -372
  604. package/src/lib/markdown.ts +0 -39
  605. package/src/lib/pino.ts +0 -82
  606. package/src/lib/social-client.ts +0 -319
  607. package/src/lib/theme-handlers.ts +0 -168
  608. package/src/lib/theme.ts +0 -351
  609. package/src/lib/tokenData.ts +0 -378
  610. package/src/lib/totp-import.ts +0 -57
  611. package/src/lib/view-registry.ts +0 -75
  612. package/src/lib/websocket-server.ts +0 -302
  613. package/src/lib/websocket-setup.ts +0 -79
  614. package/src/lib/wordlist.ts +0 -2050
  615. package/src/lib/workspace-handlers.ts +0 -285
  616. package/src/server/abi/SwapHelper.json +0 -438
  617. package/src/server/cli/approval.ts +0 -447
  618. package/src/server/cli/commands/actions.ts +0 -469
  619. package/src/server/cli/commands/agent.ts +0 -1760
  620. package/src/server/cli/commands/api.ts +0 -181
  621. package/src/server/cli/commands/apikey.ts +0 -278
  622. package/src/server/cli/commands/app.ts +0 -204
  623. package/src/server/cli/commands/approve.ts +0 -209
  624. package/src/server/cli/commands/auth.ts +0 -885
  625. package/src/server/cli/commands/cron.ts +0 -24
  626. package/src/server/cli/commands/diary.ts +0 -273
  627. package/src/server/cli/commands/doctor.ts +0 -1267
  628. package/src/server/cli/commands/env.ts +0 -476
  629. package/src/server/cli/commands/experimental.ts +0 -69
  630. package/src/server/cli/commands/init.ts +0 -973
  631. package/src/server/cli/commands/lock.ts +0 -109
  632. package/src/server/cli/commands/mcp.ts +0 -285
  633. package/src/server/cli/commands/nuke.ts +0 -156
  634. package/src/server/cli/commands/quickhack.ts +0 -86
  635. package/src/server/cli/commands/register-agent.ts +0 -181
  636. package/src/server/cli/commands/release-check.ts +0 -231
  637. package/src/server/cli/commands/restart.ts +0 -61
  638. package/src/server/cli/commands/restore.ts +0 -314
  639. package/src/server/cli/commands/service.ts +0 -406
  640. package/src/server/cli/commands/shell-hook.ts +0 -512
  641. package/src/server/cli/commands/skill.ts +0 -280
  642. package/src/server/cli/commands/social.ts +0 -648
  643. package/src/server/cli/commands/start.ts +0 -260
  644. package/src/server/cli/commands/status.ts +0 -59
  645. package/src/server/cli/commands/stop.ts +0 -36
  646. package/src/server/cli/commands/token.ts +0 -180
  647. package/src/server/cli/commands/unlock.ts +0 -50
  648. package/src/server/cli/commands/wallet.ts +0 -210
  649. package/src/server/cli/index.ts +0 -285
  650. package/src/server/cli/lib/approval-actions.ts +0 -21
  651. package/src/server/cli/lib/approval-context.ts +0 -347
  652. package/src/server/cli/lib/approval-poll.ts +0 -142
  653. package/src/server/cli/lib/aura-parser.ts +0 -64
  654. package/src/server/cli/lib/auth-bootstrap.ts +0 -72
  655. package/src/server/cli/lib/credential-create.ts +0 -74
  656. package/src/server/cli/lib/credential-resolve.ts +0 -300
  657. package/src/server/cli/lib/dotenv-migrate.ts +0 -116
  658. package/src/server/cli/lib/dotenv-parser.ts +0 -146
  659. package/src/server/cli/lib/escalation.ts +0 -238
  660. package/src/server/cli/lib/http.ts +0 -105
  661. package/src/server/cli/lib/init-steps.ts +0 -76
  662. package/src/server/cli/lib/local-agent-trust.ts +0 -46
  663. package/src/server/cli/lib/lock-unlock-helper.ts +0 -71
  664. package/src/server/cli/lib/process.ts +0 -536
  665. package/src/server/cli/socket.ts +0 -583
  666. package/src/server/cli/transport-client.ts +0 -47
  667. package/src/server/cron/index.ts +0 -133
  668. package/src/server/cron/job.ts +0 -31
  669. package/src/server/cron/jobs/balance-sync.ts +0 -436
  670. package/src/server/cron/jobs/incoming-scan.ts +0 -506
  671. package/src/server/cron/jobs/native-price.ts +0 -70
  672. package/src/server/cron/jobs/orphan-cleanup.ts +0 -40
  673. package/src/server/cron/jobs/social-inbound.ts +0 -596
  674. package/src/server/cron/jobs/social-outbound.ts +0 -70
  675. package/src/server/cron/jobs/strategy-runner.ts +0 -175
  676. package/src/server/cron/scheduler.ts +0 -125
  677. package/src/server/index.ts +0 -438
  678. package/src/server/lib/adapters/delivery.ts +0 -508
  679. package/src/server/lib/adapters/discord.ts +0 -141
  680. package/src/server/lib/adapters/factory.ts +0 -123
  681. package/src/server/lib/adapters/index.ts +0 -21
  682. package/src/server/lib/adapters/router.ts +0 -297
  683. package/src/server/lib/adapters/telegram.ts +0 -646
  684. package/src/server/lib/adapters/types.ts +0 -89
  685. package/src/server/lib/adapters/webhook.ts +0 -95
  686. package/src/server/lib/adapters/whatsapp-native.ts +0 -276
  687. package/src/server/lib/adapters/whatsapp.ts +0 -904
  688. package/src/server/lib/address.ts +0 -49
  689. package/src/server/lib/agent-auth/contracts.ts +0 -1194
  690. package/src/server/lib/agent-profiles.ts +0 -430
  691. package/src/server/lib/ai.ts +0 -286
  692. package/src/server/lib/api-registry/contracts.ts +0 -86
  693. package/src/server/lib/api-registry/validation.ts +0 -172
  694. package/src/server/lib/apikey-migration.ts +0 -258
  695. package/src/server/lib/app-installer.ts +0 -505
  696. package/src/server/lib/app-tokens.ts +0 -247
  697. package/src/server/lib/approval-flow.ts +0 -139
  698. package/src/server/lib/approval-link.ts +0 -27
  699. package/src/server/lib/auth.ts +0 -324
  700. package/src/server/lib/auto-execute.ts +0 -160
  701. package/src/server/lib/batch.ts +0 -242
  702. package/src/server/lib/cold.ts +0 -1013
  703. package/src/server/lib/config.ts +0 -410
  704. package/src/server/lib/credential-access-audit.ts +0 -85
  705. package/src/server/lib/credential-access-policy.ts +0 -112
  706. package/src/server/lib/credential-agent.ts +0 -77
  707. package/src/server/lib/credential-health.ts +0 -343
  708. package/src/server/lib/credential-import.ts +0 -614
  709. package/src/server/lib/credential-scope.ts +0 -102
  710. package/src/server/lib/credential-shares.ts +0 -190
  711. package/src/server/lib/credential-transport.ts +0 -556
  712. package/src/server/lib/credentials.ts +0 -422
  713. package/src/server/lib/crypto.ts +0 -8
  714. package/src/server/lib/db.ts +0 -58
  715. package/src/server/lib/defaults.ts +0 -397
  716. package/src/server/lib/dex/index.ts +0 -80
  717. package/src/server/lib/dex/relay.ts +0 -235
  718. package/src/server/lib/dex/types.ts +0 -59
  719. package/src/server/lib/dex/uniswap.ts +0 -370
  720. package/src/server/lib/diary.ts +0 -61
  721. package/src/server/lib/dont-ask-again-policy.ts +0 -41
  722. package/src/server/lib/e2e-agent/artifacts.ts +0 -36
  723. package/src/server/lib/e2e-agent/contracts.ts +0 -112
  724. package/src/server/lib/e2e-agent/validation.ts +0 -135
  725. package/src/server/lib/encrypt.ts +0 -114
  726. package/src/server/lib/error.ts +0 -20
  727. package/src/server/lib/escalation-contract.ts +0 -140
  728. package/src/server/lib/escalation-error-codes.ts +0 -26
  729. package/src/server/lib/escalation-responder.ts +0 -729
  730. package/src/server/lib/escalation-route-registry.ts +0 -138
  731. package/src/server/lib/events.ts +0 -220
  732. package/src/server/lib/feature-flags.ts +0 -96
  733. package/src/server/lib/hot.ts +0 -357
  734. package/src/server/lib/hub-auth.ts +0 -159
  735. package/src/server/lib/human-action-summary.ts +0 -80
  736. package/src/server/lib/key-fingerprint.ts +0 -28
  737. package/src/server/lib/logger.ts +0 -340
  738. package/src/server/lib/migrate-agent-profiles.ts +0 -96
  739. package/src/server/lib/network.ts +0 -137
  740. package/src/server/lib/notifications.ts +0 -241
  741. package/src/server/lib/oauth2-refresh.ts +0 -241
  742. package/src/server/lib/oursecret.ts +0 -87
  743. package/src/server/lib/passkey-credential.ts +0 -360
  744. package/src/server/lib/passkey.ts +0 -68
  745. package/src/server/lib/permissions.ts +0 -340
  746. package/src/server/lib/pino.ts +0 -24
  747. package/src/server/lib/policy-preview.ts +0 -138
  748. package/src/server/lib/price.ts +0 -338
  749. package/src/server/lib/prices.ts +0 -34
  750. package/src/server/lib/project-scope.ts +0 -326
  751. package/src/server/lib/redaction.ts +0 -108
  752. package/src/server/lib/resolve-action.ts +0 -398
  753. package/src/server/lib/resolve.ts +0 -36
  754. package/src/server/lib/secret-env.ts +0 -18
  755. package/src/server/lib/secret-gist-share.ts +0 -296
  756. package/src/server/lib/sessions.ts +0 -634
  757. package/src/server/lib/social/create.ts +0 -176
  758. package/src/server/lib/social/global-aura-id.ts +0 -115
  759. package/src/server/lib/social/hub-rpc-client.ts +0 -99
  760. package/src/server/lib/social/hub-session.ts +0 -6
  761. package/src/server/lib/social/public-key.ts +0 -32
  762. package/src/server/lib/social/register.ts +0 -162
  763. package/src/server/lib/social/sign.ts +0 -95
  764. package/src/server/lib/social/sync.ts +0 -301
  765. package/src/server/lib/socket-path.ts +0 -76
  766. package/src/server/lib/solana/connection.ts +0 -26
  767. package/src/server/lib/solana/jupiter.ts +0 -128
  768. package/src/server/lib/solana/transfer.ts +0 -108
  769. package/src/server/lib/solana/wallet.ts +0 -136
  770. package/src/server/lib/strategy/emits.ts +0 -21
  771. package/src/server/lib/strategy/engine.ts +0 -1313
  772. package/src/server/lib/strategy/executor.ts +0 -115
  773. package/src/server/lib/strategy/hook-context.ts +0 -159
  774. package/src/server/lib/strategy/hooks.ts +0 -1023
  775. package/src/server/lib/strategy/index.ts +0 -28
  776. package/src/server/lib/strategy/installer.ts +0 -305
  777. package/src/server/lib/strategy/loader.ts +0 -256
  778. package/src/server/lib/strategy/message.ts +0 -237
  779. package/src/server/lib/strategy/repository.ts +0 -218
  780. package/src/server/lib/strategy/session-logger.ts +0 -693
  781. package/src/server/lib/strategy/sources.ts +0 -288
  782. package/src/server/lib/strategy/state.ts +0 -189
  783. package/src/server/lib/strategy/templates.ts +0 -403
  784. package/src/server/lib/strategy/tick.ts +0 -404
  785. package/src/server/lib/strategy/types.ts +0 -230
  786. package/src/server/lib/swap.ts +0 -3
  787. package/src/server/lib/temp-policy.ts +0 -413
  788. package/src/server/lib/temp.ts +0 -86
  789. package/src/server/lib/token-metadata.ts +0 -86
  790. package/src/server/lib/token-safety.ts +0 -200
  791. package/src/server/lib/token-search.ts +0 -444
  792. package/src/server/lib/totp.ts +0 -194
  793. package/src/server/lib/transactions.ts +0 -123
  794. package/src/server/lib/transport.ts +0 -84
  795. package/src/server/lib/txhistory/decoder.ts +0 -262
  796. package/src/server/lib/txhistory/enricher.ts +0 -652
  797. package/src/server/lib/txhistory/index.ts +0 -391
  798. package/src/server/lib/txhistory/signatures.ts +0 -59
  799. package/src/server/lib/update-check.ts +0 -48
  800. package/src/server/lib/verified-summary.ts +0 -414
  801. package/src/server/lib/version-check-cache.ts +0 -23
  802. package/src/server/lib/view-registry.ts +0 -80
  803. package/src/server/mcp/profile-policy.ts +0 -30
  804. package/src/server/mcp/server.ts +0 -2887
  805. package/src/server/mcp/tools.ts +0 -863
  806. package/src/server/middleware/auth.ts +0 -117
  807. package/src/server/middleware/requestLogger.ts +0 -86
  808. package/src/server/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  809. package/src/server/routes/actions.ts +0 -607
  810. package/src/server/routes/adapters.ts +0 -1256
  811. package/src/server/routes/addressbook.ts +0 -129
  812. package/src/server/routes/agent-hub.ts +0 -276
  813. package/src/server/routes/agent-profiles.ts +0 -208
  814. package/src/server/routes/ai.ts +0 -34
  815. package/src/server/routes/apikeys.ts +0 -344
  816. package/src/server/routes/apps.ts +0 -623
  817. package/src/server/routes/auth.ts +0 -740
  818. package/src/server/routes/backup.ts +0 -404
  819. package/src/server/routes/batch.ts +0 -270
  820. package/src/server/routes/bookmarks.ts +0 -178
  821. package/src/server/routes/credential-agents.ts +0 -159
  822. package/src/server/routes/credential-shares.ts +0 -380
  823. package/src/server/routes/credentials.ts +0 -2545
  824. package/src/server/routes/dashboard.ts +0 -97
  825. package/src/server/routes/defaults.ts +0 -124
  826. package/src/server/routes/flags.ts +0 -11
  827. package/src/server/routes/fund.ts +0 -252
  828. package/src/server/routes/heartbeat.ts +0 -511
  829. package/src/server/routes/import.ts +0 -359
  830. package/src/server/routes/launch.ts +0 -703
  831. package/src/server/routes/lock.ts +0 -54
  832. package/src/server/routes/logs.ts +0 -78
  833. package/src/server/routes/nuke.ts +0 -136
  834. package/src/server/routes/passkey-credentials.ts +0 -99
  835. package/src/server/routes/passkey.ts +0 -372
  836. package/src/server/routes/portfolio.ts +0 -217
  837. package/src/server/routes/price.ts +0 -63
  838. package/src/server/routes/resolve.ts +0 -31
  839. package/src/server/routes/security.ts +0 -45
  840. package/src/server/routes/send-evm.ts +0 -286
  841. package/src/server/routes/send-solana.ts +0 -315
  842. package/src/server/routes/send.ts +0 -178
  843. package/src/server/routes/setup.ts +0 -210
  844. package/src/server/routes/social.ts +0 -869
  845. package/src/server/routes/strategy.ts +0 -901
  846. package/src/server/routes/swap-evm.ts +0 -386
  847. package/src/server/routes/swap-solana.ts +0 -203
  848. package/src/server/routes/swap.ts +0 -372
  849. package/src/server/routes/token.ts +0 -248
  850. package/src/server/routes/unlock.ts +0 -507
  851. package/src/server/routes/verified-credentials.ts +0 -312
  852. package/src/server/routes/views.ts +0 -41
  853. package/src/server/routes/wallet-assets.ts +0 -364
  854. package/src/server/routes/wallet-transactions.ts +0 -517
  855. package/src/server/routes/wallet.ts +0 -711
  856. package/src/server/test-data/agent-primary.json +0 -12
  857. package/src/server/test-data/agent-smbe0i.json +0 -14
  858. package/src/server/test-data/agent-wbl0v6.json +0 -14
  859. package/src/server/test-data/config.json +0 -33
  860. package/src/server/test-data/credentials/cred-1sj0yr5a.json +0 -23
  861. package/src/server/test-data/credentials/cred-469oz33y.json +0 -19
  862. package/src/server/test-data/credentials/cred-6h2h6oh7.json +0 -23
  863. package/src/server/test-data/credentials/cred-invrd1h9.json +0 -22
  864. package/src/server/test-data/credentials-archive/cred-nd7pngdm.json +0 -22
  865. package/src/server/test-data/debug-worker/agent-3vovb2.json +0 -14
  866. package/src/server/test-data/debug-worker/agent-ppchyx.json +0 -14
  867. package/src/server/test-data/debug-worker/agent-primary.json +0 -12
  868. package/src/server/test-data/debug-worker/agent-tm8bce.json +0 -14
  869. package/src/server/test-data/debug-worker/credentials/cred-bawnen1r.json +0 -23
  870. package/src/server/test-data/debug-worker/credentials/cred-wkqqa5sn.json +0 -23
  871. package/src/server/test-data/debug-worker/test.db +0 -0
  872. package/src/server/test-data/template.db +0 -0
  873. package/src/server/test-data/worker-1/test.db +0 -0
  874. package/src/server/test-data/worker-10/test.db +0 -0
  875. package/src/server/test-data/worker-11/test.db +0 -0
  876. package/src/server/test-data/worker-12/test.db +0 -0
  877. package/src/server/test-data/worker-13/test.db +0 -0
  878. package/src/server/test-data/worker-14/test.db +0 -0
  879. package/src/server/test-data/worker-15/test.db +0 -0
  880. package/src/server/test-data/worker-2/test.db +0 -0
  881. package/src/server/test-data/worker-3/test.db +0 -0
  882. package/src/server/test-data/worker-4/test.db +0 -0
  883. package/src/server/test-data/worker-5/test.db +0 -0
  884. package/src/server/test-data/worker-6/test.db +0 -0
  885. package/src/server/test-data/worker-7/test.db +0 -0
  886. package/src/server/test-data/worker-8/test.db +0 -0
  887. package/src/server/test-data/worker-9/test.db +0 -0
  888. package/src/server/tests/ai-integration/harness.ts +0 -235
  889. package/src/server/tests/ai-integration/live-harness.ts +0 -248
  890. package/src/server/tests/ai-integration/live.test.ts +0 -394
  891. package/src/server/tests/ai-integration/prompts.md +0 -396
  892. package/src/server/tests/ai-integration/scenarios.test.ts +0 -593
  893. package/src/server/tests/ai-integration/vitest.config.ts +0 -29
  894. package/src/server/tests/ai-integration/vitest.live.config.ts +0 -30
  895. package/src/server/tests/app-installer.test.ts +0 -406
  896. package/src/server/tests/auth/apikeys-validate.test.ts +0 -326
  897. package/src/server/tests/auth/apikeys.test.ts +0 -352
  898. package/src/server/tests/auth/approval-permissions-regression.test.ts +0 -641
  899. package/src/server/tests/auth/middleware.test.ts +0 -236
  900. package/src/server/tests/auth/permissions.test.ts +0 -387
  901. package/src/server/tests/cli/actions-auth.test.ts +0 -87
  902. package/src/server/tests/cli/agent-auth.test.ts +0 -1682
  903. package/src/server/tests/cli/agent-list-filters.test.ts +0 -150
  904. package/src/server/tests/cli/agent-share-gist.test.ts +0 -203
  905. package/src/server/tests/cli/agent.test.ts +0 -206
  906. package/src/server/tests/cli/auth-action-flag.test.ts +0 -135
  907. package/src/server/tests/cli/bin-entrypoint.test.ts +0 -438
  908. package/src/server/tests/cli/create-command.test.ts +0 -73
  909. package/src/server/tests/cli/credential-resolve.test.ts +0 -86
  910. package/src/server/tests/cli/doctor.test.ts +0 -154
  911. package/src/server/tests/cli/env-check-server-agent.test.ts +0 -114
  912. package/src/server/tests/cli/env.test.ts +0 -107
  913. package/src/server/tests/cli/escalation.test.ts +0 -140
  914. package/src/server/tests/cli/http.test.ts +0 -176
  915. package/src/server/tests/cli/init-flow.test.ts +0 -209
  916. package/src/server/tests/cli/init-runtime.test.ts +0 -144
  917. package/src/server/tests/cli/init-steps.test.ts +0 -184
  918. package/src/server/tests/cli/local-agent-trust.test.ts +0 -92
  919. package/src/server/tests/cli/process.test.ts +0 -453
  920. package/src/server/tests/cli/prompt-select.test.ts +0 -129
  921. package/src/server/tests/cli/quickhack.test.ts +0 -27
  922. package/src/server/tests/cli/restart-run.test.ts +0 -75
  923. package/src/server/tests/cli/service.test.ts +0 -138
  924. package/src/server/tests/cli/social.test.ts +0 -83
  925. package/src/server/tests/cli/socket.test.ts +0 -324
  926. package/src/server/tests/cli/start-run.test.ts +0 -185
  927. package/src/server/tests/cli/start.test.ts +0 -44
  928. package/src/server/tests/cli/taskctl-lock-smoke.test.ts +0 -136
  929. package/src/server/tests/cli/token.test.ts +0 -61
  930. package/src/server/tests/cli/wallet.test.ts +0 -23
  931. package/src/server/tests/credential-import.test.ts +0 -362
  932. package/src/server/tests/cron/incoming-scan.test.ts +0 -778
  933. package/src/server/tests/cron/native-price.test.ts +0 -121
  934. package/src/server/tests/cron/orphan-cleanup.test.ts +0 -94
  935. package/src/server/tests/cron/scheduler.test.ts +0 -161
  936. package/src/server/tests/cron/social-inbound-followers.unit.test.ts +0 -164
  937. package/src/server/tests/cron/social-inbound-staleness.test.ts +0 -193
  938. package/src/server/tests/cron/social-outbound.test.ts +0 -252
  939. package/src/server/tests/cron/strategy-runner.test.ts +0 -158
  940. package/src/server/tests/docs/job-docs-validation.test.ts +0 -16
  941. package/src/server/tests/dotenv-parser.test.ts +0 -121
  942. package/src/server/tests/e2e-agent/artifacts.test.ts +0 -35
  943. package/src/server/tests/e2e-agent/ci/nightly-set.json +0 -7
  944. package/src/server/tests/e2e-agent/ci/pr-smoke-set.json +0 -5
  945. package/src/server/tests/e2e-agent/ci-lanes.test.ts +0 -16
  946. package/src/server/tests/e2e-agent/runner.ts +0 -43
  947. package/src/server/tests/e2e-agent/scenarios/aura-onboarding-sanity.scenario.yaml +0 -16
  948. package/src/server/tests/e2e-agent/scenarios/credential-create-basic.scenario.yaml +0 -12
  949. package/src/server/tests/e2e-agent/scenarios/credential-read-basic.scenario.yaml +0 -16
  950. package/src/server/tests/e2e-agent/scenarios/save-on-submit-accept.scenario.yaml +0 -10
  951. package/src/server/tests/e2e-agent/scenarios/totp-retrieval-seeded.scenario.yaml +0 -12
  952. package/src/server/tests/e2e-agent/validation.test.ts +0 -129
  953. package/src/server/tests/e2e.test.ts +0 -295
  954. package/src/server/tests/endpoints/actions.test.ts +0 -1067
  955. package/src/server/tests/endpoints/address-transactions.test.ts +0 -223
  956. package/src/server/tests/endpoints/addressbook.test.ts +0 -225
  957. package/src/server/tests/endpoints/agent-profiles.test.ts +0 -117
  958. package/src/server/tests/endpoints/agent.test.ts +0 -713
  959. package/src/server/tests/endpoints/approve-action.test.ts +0 -107
  960. package/src/server/tests/endpoints/apps.test.ts +0 -561
  961. package/src/server/tests/endpoints/auth.test.ts +0 -565
  962. package/src/server/tests/endpoints/batch.test.ts +0 -352
  963. package/src/server/tests/endpoints/bookmarks.test.ts +0 -329
  964. package/src/server/tests/endpoints/credential-access-audit.test.ts +0 -194
  965. package/src/server/tests/endpoints/credential-ops.test.ts +0 -93
  966. package/src/server/tests/endpoints/credential-shares.test.ts +0 -249
  967. package/src/server/tests/endpoints/credentials.test.ts +0 -1786
  968. package/src/server/tests/endpoints/defaults.test.ts +0 -162
  969. package/src/server/tests/endpoints/escalation-migration-gate.test.ts +0 -488
  970. package/src/server/tests/endpoints/fund.test.ts +0 -299
  971. package/src/server/tests/endpoints/heartbeat.test.ts +0 -274
  972. package/src/server/tests/endpoints/import.test.ts +0 -192
  973. package/src/server/tests/endpoints/launch.test.ts +0 -734
  974. package/src/server/tests/endpoints/passkey-credentials.test.ts +0 -167
  975. package/src/server/tests/endpoints/passkey.test.ts +0 -219
  976. package/src/server/tests/endpoints/portfolio.test.ts +0 -497
  977. package/src/server/tests/endpoints/price.test.ts +0 -237
  978. package/src/server/tests/endpoints/rate-limit.test.ts +0 -465
  979. package/src/server/tests/endpoints/send.test.ts +0 -499
  980. package/src/server/tests/endpoints/setup.test.ts +0 -194
  981. package/src/server/tests/endpoints/solana-fund.test.ts +0 -218
  982. package/src/server/tests/endpoints/solana-send.test.ts +0 -215
  983. package/src/server/tests/endpoints/solana-swap.test.ts +0 -280
  984. package/src/server/tests/endpoints/solana-wallet.test.ts +0 -223
  985. package/src/server/tests/endpoints/strategy-routes.test.ts +0 -602
  986. package/src/server/tests/endpoints/swap.test.ts +0 -589
  987. package/src/server/tests/endpoints/token-balance.test.ts +0 -227
  988. package/src/server/tests/endpoints/token-clearing.test.ts +0 -230
  989. package/src/server/tests/endpoints/token-safety.test.ts +0 -280
  990. package/src/server/tests/endpoints/token-search.test.ts +0 -186
  991. package/src/server/tests/endpoints/transactions.test.ts +0 -348
  992. package/src/server/tests/endpoints/unlock.test.ts +0 -385
  993. package/src/server/tests/endpoints/wallet-data.test.ts +0 -547
  994. package/src/server/tests/endpoints/wallet.test.ts +0 -755
  995. package/src/server/tests/globalSetup.ts +0 -62
  996. package/src/server/tests/helpers/amounts.ts +0 -14
  997. package/src/server/tests/integration/adapter-resolve.test.ts +0 -160
  998. package/src/server/tests/integration/agent-flow.test.ts +0 -477
  999. package/src/server/tests/lib/adapters-chat.test.ts +0 -259
  1000. package/src/server/tests/lib/adapters-test.test.ts +0 -1196
  1001. package/src/server/tests/lib/adapters.test.ts +0 -962
  1002. package/src/server/tests/lib/address.test.ts +0 -96
  1003. package/src/server/tests/lib/agent-auth/contracts.test.ts +0 -771
  1004. package/src/server/tests/lib/agent-profiles.test.ts +0 -98
  1005. package/src/server/tests/lib/ai.test.ts +0 -452
  1006. package/src/server/tests/lib/api-registry/validation.test.ts +0 -174
  1007. package/src/server/tests/lib/app-tokens-tier.test.ts +0 -106
  1008. package/src/server/tests/lib/approval-link.test.ts +0 -20
  1009. package/src/server/tests/lib/aura-parser.test.ts +0 -96
  1010. package/src/server/tests/lib/auth-action.test.ts +0 -251
  1011. package/src/server/tests/lib/auth.test.ts +0 -237
  1012. package/src/server/tests/lib/auto-execute.test.ts +0 -269
  1013. package/src/server/tests/lib/auto-unlock.test.ts +0 -47
  1014. package/src/server/tests/lib/batch.test.ts +0 -363
  1015. package/src/server/tests/lib/credential-access.test.ts +0 -244
  1016. package/src/server/tests/lib/credential-agent.test.ts +0 -174
  1017. package/src/server/tests/lib/credential-field-schema.test.ts +0 -448
  1018. package/src/server/tests/lib/credential-health.test.ts +0 -110
  1019. package/src/server/tests/lib/credential-paths.test.ts +0 -430
  1020. package/src/server/tests/lib/credential-scope.test.ts +0 -163
  1021. package/src/server/tests/lib/credential-transport.test.ts +0 -319
  1022. package/src/server/tests/lib/credentials.test.ts +0 -249
  1023. package/src/server/tests/lib/defaults.test.ts +0 -76
  1024. package/src/server/tests/lib/diary.test.ts +0 -43
  1025. package/src/server/tests/lib/dont-ask-again-policy.test.ts +0 -22
  1026. package/src/server/tests/lib/encrypt.test.ts +0 -43
  1027. package/src/server/tests/lib/escalation-responder.test.ts +0 -228
  1028. package/src/server/tests/lib/events-decoder.test.ts +0 -286
  1029. package/src/server/tests/lib/events-enricher.test.ts +0 -294
  1030. package/src/server/tests/lib/events-fetcher.test.ts +0 -577
  1031. package/src/server/tests/lib/human-action-summary.test.ts +0 -62
  1032. package/src/server/tests/lib/network.test.ts +0 -280
  1033. package/src/server/tests/lib/oauth2-refresh.test.ts +0 -140
  1034. package/src/server/tests/lib/passkey-credential.test.ts +0 -153
  1035. package/src/server/tests/lib/price.test.ts +0 -286
  1036. package/src/server/tests/lib/prices.test.ts +0 -50
  1037. package/src/server/tests/lib/profile-parity.test.ts +0 -50
  1038. package/src/server/tests/lib/project-scope.test.ts +0 -242
  1039. package/src/server/tests/lib/relay.test.ts +0 -464
  1040. package/src/server/tests/lib/resolve-action.test.ts +0 -294
  1041. package/src/server/tests/lib/secret-gist-share.test.ts +0 -58
  1042. package/src/server/tests/lib/sessions-currency.test.ts +0 -215
  1043. package/src/server/tests/lib/sessions.test.ts +0 -327
  1044. package/src/server/tests/lib/social/create.test.ts +0 -207
  1045. package/src/server/tests/lib/social/sign.test.ts +0 -163
  1046. package/src/server/tests/lib/social/sync.test.ts +0 -198
  1047. package/src/server/tests/lib/solana-wallet.test.ts +0 -143
  1048. package/src/server/tests/lib/strategy/executor.test.ts +0 -363
  1049. package/src/server/tests/lib/strategy/hooks.test.ts +0 -897
  1050. package/src/server/tests/lib/strategy/loader.test.ts +0 -343
  1051. package/src/server/tests/lib/strategy/message.test.ts +0 -416
  1052. package/src/server/tests/lib/strategy/repository.test.ts +0 -84
  1053. package/src/server/tests/lib/strategy/session-logger.test.ts +0 -467
  1054. package/src/server/tests/lib/strategy/sources.test.ts +0 -503
  1055. package/src/server/tests/lib/strategy/state.test.ts +0 -349
  1056. package/src/server/tests/lib/strategy/tick.test.ts +0 -283
  1057. package/src/server/tests/lib/temp-policy.test.ts +0 -184
  1058. package/src/server/tests/lib/token-safety.test.ts +0 -277
  1059. package/src/server/tests/lib/token-search.test.ts +0 -687
  1060. package/src/server/tests/lib/totp.test.ts +0 -193
  1061. package/src/server/tests/lib/uniswap.test.ts +0 -307
  1062. package/src/server/tests/lib/update-check.test.ts +0 -27
  1063. package/src/server/tests/lib/verified-summary.test.ts +0 -454
  1064. package/src/server/tests/lib/websocket-auth.test.ts +0 -247
  1065. package/src/server/tests/mcp/contract.test.ts +0 -318
  1066. package/src/server/tests/mcp/profile-policy.test.ts +0 -178
  1067. package/src/server/tests/mcp/server.test.ts +0 -3159
  1068. package/src/server/tests/mcp/tools.test.ts +0 -518
  1069. package/src/server/tests/resolve.test.ts +0 -81
  1070. package/src/server/tests/runtime-agent-smoke.test.ts +0 -130
  1071. package/src/server/tests/sandbox/cli-cd-suite.test.ts +0 -526
  1072. package/src/server/tests/sandbox/cli.test.ts +0 -402
  1073. package/src/server/tests/send-token.test.ts +0 -191
  1074. package/src/server/tests/setup-integration/adapter-test.test.ts +0 -122
  1075. package/src/server/tests/setup-integration/apikey-validation.test.ts +0 -118
  1076. package/src/server/tests/setup-integration/autonomous-agent.test.ts +0 -243
  1077. package/src/server/tests/setup-integration/edge-cases.test.ts +0 -115
  1078. package/src/server/tests/setup-integration/fresh-setup.test.ts +0 -60
  1079. package/src/server/tests/setup-integration/harness.ts +0 -296
  1080. package/src/server/tests/setup-integration/onboarding-e2e.test.ts +0 -292
  1081. package/src/server/tests/setup-integration/terminal-flow.test.ts +0 -201
  1082. package/src/server/tests/setup-integration/vitest.config.ts +0 -29
  1083. package/src/server/tests/setup-integration/wizard-flow.test.ts +0 -139
  1084. package/src/server/tests/setup.ts +0 -351
  1085. package/src/server/tests/swap-quote.test.ts +0 -279
  1086. package/src/server/tests/test-data/agent-e1ica7.json +0 -14
  1087. package/src/server/tests/test-data/agent-iaswp5.json +0 -14
  1088. package/src/server/tests/test-data/agent-primary.json +0 -12
  1089. package/src/server/tests/test-data/agent-qvn7eo.json +0 -14
  1090. package/src/server/tests/test-data/agent-vqhtrt.json +0 -14
  1091. package/src/server/tests/test-data/config.json +0 -33
  1092. package/src/server/tests/test-data/test.db +0 -0
  1093. package/src/server/tests/workerSetup.ts +0 -39
  1094. package/src/server/tsconfig.json +0 -21
  1095. package/src/server/tsconfig.tsbuildinfo +0 -1
  1096. package/src/server/types.ts +0 -161
  1097. package/start.sh +0 -170
  1098. package/tailwind.config.ts +0 -99
  1099. package/tsconfig.json +0 -52
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974],{18824:(e,t,a)=>{"use strict";a.d(t,{e:()=>s});var r=a(12115),l=a(90960);function s(){let e=(0,r.useMemo)(()=>(0,l.au)(),[]),[t,a]=(0,r.useState)({checking:!1,updateAvailable:!1,current:null,latest:null,updating:!1,updateInProgress:!1,updateOutput:null,updateError:null,apiServerDown:!1,restartingServer:!1,restartError:null}),s=(0,r.useCallback)(async()=>{a(e=>({...e,checking:!0}));try{let e=await fetch("/api/version",{cache:"no-store"});if(!e.ok)return void a(e=>({...e,checking:!1}));let t=await e.json();t.success&&a(e=>({...e,checking:!1,updateAvailable:t.updateAvailable,current:t.current,latest:t.latest,updateInProgress:!!t.updateAvailable&&e.updateInProgress}))}catch(e){a(e=>({...e,checking:!1}))}},[]),n=(0,r.useCallback)(async()=>{a(e=>({...e,updating:!0,updateError:null,updateOutput:null}));try{let e=await fetch("/api/update",{method:"POST"}),t=await e.text(),r=(()=>{try{return JSON.parse(t)}catch(a){return{success:!1,error:t||"Update failed (".concat(e.status,")")}}})();if(409===e.status||r.inProgress)return void a(e=>({...e,updating:!1,updateInProgress:!0,updateError:null,updateOutput:r.output||r.message||r.error||"Update is already running in the background."}));if(r.success){if(r.deferred)return void a(e=>({...e,updating:!1,updateInProgress:!0,updateOutput:r.output||r.message||"Update started in background.",updateError:null}));a(e=>({...e,updating:!1,updateInProgress:!1,updateAvailable:!1,updateOutput:r.output||"Update completed successfully."}))}else a(e=>({...e,updating:!1,updateInProgress:!1,updateError:r.error||"Update failed.",updateOutput:r.output||null}))}catch(e){a(t=>({...t,updating:!1,updateInProgress:!1,updateError:e.message||"Update request failed."}))}},[]),o=(0,r.useCallback)(async()=>{try{let t=!(await fetch("".concat(e,"/health"),{cache:"no-store"})).ok;a(e=>e.apiServerDown===t&&(t||!e.restartError)?e:{...e,apiServerDown:t,restartError:t?e.restartError:null})}catch(e){a(e=>e.apiServerDown?e:{...e,apiServerDown:!0})}},[e]),i=(0,r.useCallback)(async()=>{a(e=>({...e,restartingServer:!0,restartError:null}));try{let e=await fetch("/api/restart",{method:"POST"}),t=await e.json().catch(()=>({success:!1,error:"Invalid restart response."}));if(!e.ok||!t.success)throw Error(t.error||"Restart failed (".concat(e.status,")"));a(e=>({...e,restartingServer:!1,apiServerDown:!0,restartError:null}));let r=new URL(window.location.href);r.searchParams.set("_aura_restart",Date.now().toString()),window.location.replace(r.toString())}catch(e){a(t=>({...t,restartingServer:!1,restartError:e.message||"Restart request failed."}))}},[]);return(0,r.useEffect)(()=>{s()},[s]),(0,r.useEffect)(()=>{o();let e=window.setInterval(()=>{o()},8e3);return()=>{window.clearInterval(e)}},[o]),(0,r.useEffect)(()=>{let e=()=>{"visible"===document.visibilityState&&o()};return document.addEventListener("visibilitychange",e),()=>{document.removeEventListener("visibilitychange",e)}},[o]),(0,r.useEffect)(()=>{if(!t.updateInProgress)return;s();let e=window.setInterval(()=>{s()},2500);return()=>{window.clearInterval(e)}},[t.updateInProgress,s]),(0,r.useEffect)(()=>{if(!t.apiServerDown||t.restartingServer)return;let e=window.setInterval(()=>{o()},1500);return()=>{window.clearInterval(e)}},[t.apiServerDown,t.restartingServer,o]),{...t,runUpdate:n,checkForUpdate:s,runRestart:i,checkApiHealth:o}}},30141:(e,t,a)=>{"use strict";a.d(t,{default:()=>aJ});var r=a(95155),l=a(12115),s=a(18677),n=a(52619),o=a.n(n),i=a(80021),c=a(15870),d=a(76489),u=a(54901),x=a(90960),p=a(66509),f=a(9540),m=a(79051),v=a(86651),h=a(3409),g=a(47993),b=a(58291),y=a(79397),j=a(5370),w=a(39068),k=a(78519),N=a(89715),S=a(75882),C=a(89559),A=a(50803),I=a(76907),E=a(1375),T=a(71360),L=a(27937),R=a(99708),z=a(6191),O=a(35795),P=a(39347),F=a(45345),D=a(76482);let _=[{key:"all",label:"All Credentials",icon:y.A},{key:"login",label:"Logins",icon:j.A},{key:"sso",label:"SSO Logins",icon:w.A},{key:"card",label:"Cards",icon:k.A},{key:"plain_note",label:"Plain Notes",icon:N.A},{key:"note",label:"Secret Notes",icon:N.A},{key:"hot_wallet",label:"Hot Wallets",icon:S.A},{key:"oauth2",label:"OAuth2",icon:C.A},{key:"ssh",label:"SSH Keys",icon:A.A},{key:"gpg",label:"GPG Keys",icon:I.A}],U={login:"login",sso:"sso",card:"card",plain_note:"plain_note",note:"note",hot_wallet:"hot_wallet",oauth2:"oauth2",ssh:"ssh",gpg:"gpg"},H=[{key:"archive",label:"Archived",icon:E.A},{key:"recently_deleted",label:"Recently Deleted",icon:T.A}],M=[{combo:"Cmd/Ctrl + K",action:"Focus search"},{combo:"/",action:"Focus search (while not typing)"},{combo:"Cmd/Ctrl + Alt + N",action:"Create new credential"},{combo:"↑ / ↓",action:"Navigate list selection"},{combo:"Enter",action:"Open selected credential"}],W="auramaxx:agent-sidebar-collapsible-sections",K="auramaxx:agent-sidebar-collapsed-agent-nodes",B={agents:!1,categories:!0,favorites:!0,tags:!0,lifecycle:!0};function $(e){return e.parentAgentId||e.linkedTo}let V=e=>{let{agents:t,filters:a,categoryCounts:s,tags:n,favoritesCount:o,onFilterChange:i,onLock:c,onLockAgent:d,onUnlockAgent:u,onCreateCredential:x,onCreateAgent:p,mode:f="desktop",onNavigate:m,notifications:v=[],onDismissNotification:h,pendingActionCount:g=0,surface:w="credentials",onSurfaceChange:k,onSettings:N,onDeleteAgent:S}=e,C="tablet"===f,A="tablet"===f?"calc(48px * var(--ui-scale-factor, 1))":"mobile"===f?"calc(220px * var(--ui-scale-factor, 1))":"calc(200px * var(--ui-scale-factor, 1))",I="active"!==a.lifecycle,E=(0,l.useMemo)(()=>(function(e){let t=new Map(e.map(e=>[e.id,e])),a=new Map(e.map((e,t)=>[e.id,t])),r=new Map;for(let a of e){let e=$(a);if(!e||!t.has(e)||e===a.id)continue;let l=r.get(e)||[];l.push(a),r.set(e,l)}let l=(e,t)=>(a.get(e.id)||0)-(a.get(t.id)||0);for(let e of r.values())e.sort(l);let s=e.filter(e=>{let a=$(e);return!a||!t.has(a)||a===e.id}).sort(l),n=[],o=new Set,i=(e,t)=>{if(!o.has(e.id))for(let a of(o.add(e.id),n.push({agent:e,depth:t}),r.get(e.id)||[]))i(a,t+1)};for(let e of s)i(e,0);for(let t of[...e].sort(l))i(t,0);return n})(t),[t]),{parentByChild:V,childCountByParent:G}=(0,l.useMemo)(()=>(function(e){let t=new Map,a=new Map;for(let r of e){let e=$(r);e&&e!==r.id&&(t.set(r.id,e),a.set(e,(a.get(e)||0)+1))}return{parentByChild:t,childCountByParent:a}})(t),[t]),[Y,q]=(0,l.useState)(B),[X,J]=(0,l.useState)(!1),[Q,Z]=(0,l.useState)({}),[ee,et]=(0,l.useState)(!1),[ea,er]=(0,l.useState)(!1),[el,es]=(0,l.useState)("unknown"),en=(0,l.useRef)(null),eo=el&&"unknown"!==el?"v".concat(el.replace(/^v/i,"")):"vunknown";(0,l.useEffect)(()=>{try{let e=window.localStorage.getItem(W);if(!e)return;let t=function(e){return e&&"object"==typeof e?{agents:!!e.agents,categories:!!e.categories,favorites:!!e.favorites,tags:!!e.tags,lifecycle:!!e.lifecycle}:null}(JSON.parse(e));if(!t)return;q(t)}catch(e){}finally{J(!0)}},[]),(0,l.useEffect)(()=>{if(X)try{window.localStorage.setItem(W,JSON.stringify(Y))}catch(e){}},[Y,X]),(0,l.useEffect)(()=>{try{let e=window.localStorage.getItem(K);if(!e)return;let t=function(e){if(!e||"object"!=typeof e)return null;let t={};for(let[a,r]of Object.entries(e))a&&(t[a]=!!r);return t}(JSON.parse(e));if(!t)return;Z(t)}catch(e){}finally{et(!0)}},[]),(0,l.useEffect)(()=>{if(ee)try{window.localStorage.setItem(K,JSON.stringify(Q))}catch(e){}},[Q,ee]),(0,l.useEffect)(()=>{let e=a.agentId;if(!e)return;let t=[],r=V.get(e);for(;r;)t.push(r),r=V.get(r);0!==t.length&&Z(e=>{let a=!1,r={...e};for(let e of t)r[e]&&(delete r[e],a=!0);return a?r:e})},[a.agentId,V]),(0,l.useEffect)(()=>{let e=!1;return(async()=>{try{let t=await fetch("/api/version",{cache:"no-store"});if(!t.ok)return;let a=await t.json();if(!a.success)return;let r="string"==typeof a.current?a.current.trim():"";if(!r)return;e||es(r)}catch(e){}})(),()=>{e=!0}},[]),(0,l.useEffect)(()=>{if(!ea)return;let e=e=>{let t=e.target;en.current&&!en.current.contains(t)&&er(!1)},t=e=>{"Escape"===e.key&&er(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[ea]);let ei=(0,l.useMemo)(()=>{let e=[],t=[];for(let a of E){for(;e.length>a.depth;)e.pop();!(e.length>0)&&(t.push(a),Q[a.agent.id]&&e.push(a.agent.id))}return t},[E,Q]),ec=e=>{q(t=>({...t,[e]:!t[e]}))},ed=e=>{null==k||k("credentials"),i(e),null==m||m()},eu=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",t=arguments.length>1?arguments[1]:void 0;null==k||k("credentials"),t?x(e,t):x(e),null==m||m()},ex=()=>{c(),null==m||m()},ep=()=>{null==k||k("apiKeys"),null==m||m()},ef=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return(0,r.jsxs)("button",{type:"button",onClick:()=>ec(e),onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),ec(e))},"aria-expanded":!Y[e],"aria-controls":"agent-sidebar-section-".concat(e),"aria-label":"".concat(t," section"),className:"w-full flex items-center transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(C?"justify-center py-1":"justify-between px-2 py-1"," ").concat(a),title:"".concat(t," section"),children:[!C&&(0,r.jsx)("span",{className:"text-[8px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] font-bold",children:t}),(0,r.jsx)(L.A,{size:10,className:"text-[var(--color-text-faint,#9ca3af)] transition-transform ".concat(Y[e]?"":"rotate-90")})]})};return(0,r.jsxs)("div",{className:"h-full flex flex-col border-r border-[var(--color-border,#d4d4d8)] font-mono relative overflow-hidden shrink-0",style:{width:A,minWidth:A,background:"var(--color-surface, #f4f4f2)",fontSize:"var(--font-size-sm)"},children:[(0,r.jsx)("div",{className:"absolute inset-0 opacity-[0.02] pointer-events-none bg-[radial-gradient(var(--color-text,#000)_1px,transparent_1px)] bg-[size:4px_4px]"}),(0,r.jsx)("div",{className:"flex items-center justify-between border-b border-[var(--color-border,#d4d4d8)] relative z-10 ".concat(C?"px-2 py-2":"px-3 py-3"),children:(0,r.jsx)("div",{className:"flex items-center ".concat(C?"justify-center w-full":"gap-2"),children:!C&&(0,r.jsxs)("div",{className:"leading-tight",children:[(0,r.jsxs)("div",{className:"flex items-baseline gap-1",children:[(0,r.jsx)("span",{"data-testid":"agent-sidebar-header-brand",className:"text-[10px] font-bold tracking-tight lowercase text-[var(--color-text,#0a0a0a)]",children:"auramaxx"}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-muted,#6b7280)] uppercase tracking-widest",children:"from"})]}),(0,r.jsx)("a",{href:"https://x.com/nicoletteduclar",target:"_blank",rel:"noopener noreferrer",className:"block text-[8px] text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"@nicoletteduclar, with love"})]})})}),(0,r.jsxs)("div",{className:"flex-1 overflow-y-auto overflow-x-hidden relative z-10",children:[(0,r.jsxs)("div",{className:"border-b border-[var(--color-border,#d4d4d8)]",children:[ef("agents","Agents"),!Y.agents&&(0,r.jsxs)("div",{id:"agent-sidebar-section-agents",className:"".concat(C?"px-1 pb-2":"px-2 pb-2"," overflow-x-hidden"),children:[(0,r.jsxs)("div",{className:"flex items-center ".concat(C?"gap-1":"gap-1.5"),style:{borderLeft:null===a.agentId?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},children:[(0,r.jsx)("button",{onClick:()=>ed({agentId:null,lifecycle:"active",tag:null}),className:"flex-1 flex items-center transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(C?"justify-center px-1 py-1.5":"gap-2 px-2 py-1.5 text-left"),title:"All Agents (Active)",children:C?(0,r.jsx)(y.A,{size:11,className:"text-[var(--color-text-muted,#6b7280)]"}):(0,r.jsx)("span",{className:"text-[9px] tracking-widest uppercase text-[var(--color-text,#0a0a0a)] font-bold",children:"All Agents"})}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:ex,className:C?"!px-0 !h-6 !w-6":"!px-1.5 !h-6",title:"Lock all agents",children:(0,r.jsx)(R.A,{size:10})}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>{var e;null==k||k("credentials"),p(e),null==m||m()},className:C?"!px-0 !h-6 !w-6":"!px-1.5 !h-6",title:"Create agent",children:(0,r.jsx)(z.A,{size:10})})]}),ei.map(e=>{var l,s,n;let{agent:o,depth:i}=e,c=o.name||(o.isPrimary?"Primary":"Agent ".concat(o.id.slice(0,6))),x=!$(o)&&!o.isPrimary&&o.isUnlocked&&!!d,p=(G.get(o.id)||0)>0,f=V.get(o.id),m=f?(null==(l=t.find(e=>e.id===f))?void 0:l.name)||f.slice(0,6):null,v=a.agentId===o.id;return(0,r.jsxs)("div",{className:"w-full min-w-0 flex items-center group",style:{borderLeft:v?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},children:[(0,r.jsx)("div",{className:"ml-0.5 flex items-center",children:p?(0,r.jsx)("button",{type:"button","data-testid":"agent-toggle-".concat(o.id),"aria-label":"Toggle children for ".concat(c),onClick:e=>{e.stopPropagation(),(e=>{Z(t=>({...t,[e]:!t[e]}))})(o.id)},className:"w-5 h-5 flex items-center justify-center text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)]",children:(0,r.jsx)(L.A,{size:9,className:"transition-transform ".concat(Q[o.id]?"":"rotate-90")})}):(0,r.jsx)("span",{className:"w-5"})}),(0,r.jsx)("button",{"data-testid":"agent-item-".concat(o.id),"data-agent-depth":i,onClick:()=>{if(!o.isUnlocked){null==u||u(o);return}ed({agentId:o.id})},className:"flex-1 min-w-0 flex items-center transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(C?"justify-center py-1.5 pr-1":"gap-2 py-1.5 pr-2 text-left"),style:{paddingLeft:C?"".concat(Math.max(2,2+4*i),"px"):"".concat(8+12*i,"px")},title:c,children:C?(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("div",{className:"w-4 h-4 border border-[var(--color-border,#d4d4d8)] rounded-full flex items-center justify-center text-[7px] uppercase text-[var(--color-text-muted,#6b7280)]",children:(o.name||"V").slice(0,1)}),o.isUnlocked?(0,r.jsx)(O.A,{size:8,className:"text-[var(--color-text-muted,#6b7280)]"}):(0,r.jsx)(R.A,{size:8,className:"text-[var(--color-text-faint,#9ca3af)]"})]}):(0,r.jsxs)(r.Fragment,{children:[i>0&&(0,r.jsx)("span",{"data-testid":"agent-lineage-".concat(o.id),className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",title:m?"Child of ".concat(m):"Child agent",children:"↳"}),(0,r.jsx)("span",{className:"min-w-0 flex-1 text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] truncate",children:c}),(0,r.jsx)("span",{className:"shrink-0 text-[8px] text-[var(--color-text-faint,#9ca3af)] tabular-nums",title:"".concat(null!=(s=o.credentialCount)?s:0," credentials"),children:null!=(n=o.credentialCount)?n:0})]})}),!C&&(0,r.jsxs)("div",{className:"mr-1 flex items-center gap-0.5",children:[x&&(0,r.jsx)("button",{type:"button","data-testid":"agent-status-lock-".concat(o.id),title:o.isPrimary?"Lock all agents":"Lock agent ".concat(c),"aria-label":o.isPrimary?"Lock all agents":"Lock agent ".concat(c),onClick:e=>{if(e.stopPropagation(),o.isPrimary)return void ex();null==d||d(o.id)},className:"w-5 h-5 flex items-center justify-center text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] opacity-0 group-hover:opacity-100 transition-opacity",children:(0,r.jsx)(R.A,{size:9})}),S&&(0,r.jsx)("button",{type:"button",title:"Delete agent ".concat(c),"aria-label":"Delete agent ".concat(c),onClick:e=>{e.stopPropagation(),S(o)},className:"w-5 h-5 flex items-center justify-center text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity",children:(0,r.jsx)(T.A,{size:9})})]})]},o.id)})]})]}),(0,r.jsxs)("div",{className:"border-b border-[var(--color-border,#d4d4d8)]",children:[ef("categories","Categories"),!Y.categories&&(0,r.jsx)("div",{id:"agent-sidebar-section-categories",className:C?"px-1 pb-2":"px-2 pb-2",children:_.map(e=>{let{key:t,label:l,icon:n}=e;return(0,r.jsxs)("div",{className:"w-full flex items-center gap-1 group",children:[(0,r.jsxs)("button",{onClick:()=>ed({category:t}),className:"".concat("flex-1 min-w-0"," flex items-center transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ").concat(C?"justify-center px-1 py-1.5":"gap-2 px-2 py-1.5 text-left"),style:{borderLeft:a.category===t?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},title:l,children:[(0,r.jsx)(n,{size:11,className:a.category===t?"text-[var(--color-text,#0a0a0a)]":"text-[var(--color-text-muted,#6b7280)]"}),!C&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"text-[9px] tracking-widest uppercase flex-1 ".concat(a.category===t?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)]"),children:l}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:s[t]})]})]}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>{let e=U[t];if(e)return void eu("default",e);eu("type-picker")},className:"".concat(C?"!px-0 !h-6 !w-6":"!px-1.5 !h-6"," opacity-100"),title:I?"Click All Credentials to return to Active and create ".concat(l):"Create ".concat(l),disabled:I,children:(0,r.jsx)(z.A,{size:10})})]},t)})})]}),(0,r.jsxs)("div",{className:"border-b border-[var(--color-border,#d4d4d8)]",children:[ef("favorites","Favorites"),!Y.favorites&&(0,r.jsx)("div",{id:"agent-sidebar-section-favorites",className:C?"px-1 pb-2":"px-2 pb-2",children:(0,r.jsxs)("button",{onClick:()=>ed({favoritesOnly:!a.favoritesOnly}),className:"w-full flex items-center transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(C?"justify-center px-1 py-1.5":"gap-2 px-2 py-1.5 text-left"),style:{borderLeft:a.favoritesOnly?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},title:"Favorites",children:[(0,r.jsx)(P.A,{size:11,className:a.favoritesOnly?"text-[var(--color-favorite,#ff4d00)]":"text-[var(--color-text-muted,#6b7280)]",style:a.favoritesOnly?{fill:"var(--color-favorite,#ff4d00)",color:"var(--color-favorite,#ff4d00)"}:void 0}),!C&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"text-[9px] tracking-widest uppercase flex-1 ".concat(a.favoritesOnly?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)]"),children:"Favorites"}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:o})]})]})})]}),!C&&n.length>0&&(0,r.jsxs)("div",{className:"border-b border-[var(--color-border,#d4d4d8)]",children:[ef("tags","Tags"),!Y.tags&&(0,r.jsx)("div",{id:"agent-sidebar-section-tags",className:"px-2 pb-2 overflow-y-auto",children:n.map(e=>(0,r.jsxs)("button",{onClick:()=>ed({tag:a.tag===e?null:e}),className:"w-full flex items-center gap-2 px-2 py-1 text-left transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)]",style:{borderLeft:a.tag===e?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},children:[(0,r.jsx)(F.A,{size:9,className:a.tag===e?"text-[var(--color-text,#0a0a0a)]":"text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("span",{className:"text-[9px] tracking-widest uppercase truncate ".concat(a.tag===e?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)]"),children:e})]},e))})]}),!C&&(0,r.jsxs)("div",{className:"border-b border-[var(--color-border,#d4d4d8)]",children:[ef("lifecycle","Lifecycle"),!Y.lifecycle&&(0,r.jsx)("div",{id:"agent-sidebar-section-lifecycle",className:"px-2 pb-2",children:H.map(e=>{let{key:t,label:l,icon:s}=e;return(0,r.jsxs)("button",{onClick:()=>ed({lifecycle:t,tag:null}),className:"w-full flex items-center gap-2 px-2 py-1 text-left transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)]",style:{borderLeft:a.lifecycle===t?"2px solid var(--color-accent, #ccff00)":"2px solid transparent"},children:[(0,r.jsx)(s,{size:9,className:a.lifecycle===t?"text-[var(--color-text,#0a0a0a)]":"text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("span",{className:"text-[9px] tracking-widest uppercase truncate ".concat(a.lifecycle===t?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)]"),children:l})]},t)})})]})]}),(0,r.jsxs)("div",{className:"border-t border-[var(--color-border,#d4d4d8)] ".concat(C?"px-1 py-2":"px-3 py-3"),children:[g>0&&(0,r.jsxs)("div",{className:"flex items-center gap-1.5 mb-2 ".concat(C?"justify-center":"px-1"),children:[(0,r.jsx)("span",{className:"min-w-[16px] h-[16px] flex items-center justify-center px-1 font-mono text-[8px] font-bold",style:{background:"var(--color-danger, #ef4444)",color:"var(--color-danger-foreground, #ffffff)",borderRadius:"var(--radius-sm)"},children:g>9?"9+":g}),!C&&(0,r.jsx)("span",{className:"font-mono text-[8px] font-bold tracking-widest uppercase text-[var(--color-danger,#ef4444)]",children:"PENDING"})]}),C&&(0,r.jsxs)("div",{className:"mb-2 flex items-center gap-1",children:[(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:ep,icon:(0,r.jsx)(j.A,{size:10}),className:"flex-1 !px-0",title:"API Keys"}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:ex,icon:(0,r.jsx)(R.A,{size:10}),className:"flex-1 !px-0",title:"Lock"})]}),!C&&(0,r.jsxs)("div",{className:"flex items-center gap-2 mt-2 justify-center",children:[(0,r.jsx)("button",{type:"button",onClick:()=>{null==k||k("audit"),null==m||m()},className:"text-[8px] tracking-widest uppercase transition-colors ".concat("audit"===w?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)]"),"aria-current":"audit"===w?"page":void 0,children:"AUDIT"}),(0,r.jsx)("button",{type:"button",onClick:ep,className:"text-[8px] tracking-widest uppercase transition-colors ".concat("apiKeys"===w?"text-[var(--color-text,#0a0a0a)] font-bold":"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)]"),"aria-current":"apiKeys"===w?"page":void 0,children:"API KEYS"}),(0,r.jsx)("button",{type:"button",onClick:ex,className:"text-[8px] tracking-widest uppercase transition-colors text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)]",children:"LOCK"})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2 ".concat(C?"mt-2":"mt-3"),"data-testid":"agent-sidebar-footer-barcode",children:[(0,r.jsx)("div",{className:"h-4 flex-1 bg-[repeating-linear-gradient(90deg,var(--color-text,#000),var(--color-text,#000)_1px,transparent_1px,transparent_3px)] opacity-30"}),!C&&(0,r.jsx)("span",{"data-testid":"sidebar-version-label",className:"font-mono text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest",title:"AuraMaxx ".concat(eo),children:eo}),!C&&(0,r.jsxs)("div",{className:"relative",ref:en,children:[(0,r.jsx)("button",{type:"button","data-testid":"shortcut-hint-trigger",onClick:()=>er(e=>!e),className:"inline-flex h-5 w-5 items-center justify-center border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#ffffff)] text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors","aria-expanded":ea?"true":"false","aria-label":"Keyboard shortcuts",title:"Keyboard shortcuts",children:(0,r.jsx)(D.A,{size:10})}),ea&&(0,r.jsxs)("div",{"data-testid":"shortcut-hint-popover",className:"absolute bottom-full right-0 mb-1 border border-[var(--color-border-focus,#0a0a0a)] bg-[var(--color-surface,#ffffff)] shadow-mech z-30 p-2 w-[170px]",children:[(0,r.jsx)("div",{className:"text-[8px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-1",children:"Keyboard Shortcuts"}),(0,r.jsx)("div",{className:"space-y-1",children:M.map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsx)("span",{className:"text-[8px] tracking-widest uppercase text-[var(--color-text,#0a0a0a)]",children:e.combo}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-muted,#6b7280)]",children:e.action})]},e.combo))})]})]})]})]})]})};var G=a(48314),Y=a(55867),q=a(21786);let X=/^([a-z0-9]+(?:_[a-z0-9]+)*)_(\d{4})$/,J=/^[a-z0-9]+(?:_[a-z0-9]+)*$/,Q={visa:"Visa",mastercard:"Mastercard",amex:"Amex",discover:"Discover",card:"Card"},Z=e=>{let t=e.trim().toLowerCase();return t?Q[t]?Q[t]:t.split("_").filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):"Card"},ee=e=>{if("card"!==e.type)return e.name;let t=(e.name||"").trim();if(!t)return"Card";let a=t.match(X);if(a){let[,e,t]=a;return"".concat(Z(e)," ••••").concat(t)}return J.test(t)&&t===t.toLowerCase()?Z(t):t},et={login:j.A,card:k.A,sso:w.A,note:N.A,hot_wallet:S.A,plain_note:N.A,apikey:j.A,oauth2:C.A,ssh:A.A,gpg:I.A},ea=e=>{let{credential:t,selected:a,onClick:l}=e,s=et[t.type]||N.A,n=function(e){switch(e.type){case"login":return e.meta.username||e.meta.url||"";case"card":return e.meta.last4?"•••• ".concat(e.meta.last4):"";case"sso":{let t=String(e.meta.provider||"").trim(),a=String(e.meta.website||"").trim();if(t&&a)return"".concat(t," • ").concat(a);return t||a||"SSO Login"}case"note":return"Secure Note";case"hot_wallet":return e.meta.address||e.meta.chain||"Hot Wallet";case"plain_note":return e.meta.content||e.meta.value||"Plain Note";case"apikey":return e.meta.key||"API Key";case"oauth2":return e.meta.scopes||"OAuth2";case"ssh":return e.meta.fingerprint||e.meta.key_type||"SSH Key";case"gpg":return e.meta.key_id||e.meta.uid_email||"GPG Key";default:return""}}(t),o=ee(t),i=t.meta.favorite;return(0,r.jsxs)("div",{onClick:l,className:"flex items-center cursor-pointer border-b border-[var(--color-credential-array-border,#8d8d95)] transition-all hover:bg-[var(--color-background-alt,#f4f4f5)] hover:shadow-mech-hover ".concat(a?"corner-marks":""),style:{gap:"var(--space-sm)",padding:"var(--space-sm) var(--space-md)",borderLeft:a?"2px solid var(--color-accent, #ccff00)":"2px solid transparent",background:a?"var(--color-background-alt, #f4f4f5)":void 0},children:[(0,r.jsx)(s,{size:14,className:"text-[var(--color-text-muted,#6b7280)] flex-shrink-0"}),(0,r.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,r.jsx)("div",{className:"font-mono text-[11px] font-semibold text-[var(--color-text,#0a0a0a)] truncate",children:o}),n&&(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-text-muted,#6b7280)] truncate",children:n})]}),(()=>{let e=function(e){if("oauth2"!==e.type)return null;let t=e.meta.expires_at;if(!t)return{label:"No token",color:"var(--color-text-muted,#6b7280)",background:"var(--color-background-alt,#f4f4f5)"};let a=Math.floor(Date.now()/1e3);if(a>=t)return{label:"Expired",color:"var(--color-danger,#ef4444)",background:"color-mix(in srgb, var(--color-danger,#ef4444) 12%, transparent)"};let r=t-a;return r<300?{label:"<5m",color:"var(--color-warning,#ff4d00)",background:"color-mix(in srgb, var(--color-warning,#ff4d00) 12%, transparent)"}:{label:r<3600?"".concat(Math.floor(r/60),"m"):"".concat(Math.floor(r/3600),"h"),color:"var(--color-success,#00c853)",background:"color-mix(in srgb, var(--color-success,#00c853) 12%, transparent)"}}(t);return e?(0,r.jsx)("span",{className:"flex-shrink-0 font-mono text-[8px] font-semibold px-1.5 py-0.5 rounded-sm",style:{color:e.color,background:e.background,borderRadius:"var(--radius-sm)"},children:e.label}):null})(),i&&(0,r.jsx)(P.A,{size:10,className:"flex-shrink-0 text-[var(--color-favorite,#ff4d00)] fill-[var(--color-favorite,#ff4d00)]"})]})},er=e=>e.trim().toLowerCase(),el=(e,t)=>{let a=null==t?void 0:t[e.id];return"number"==typeof a&&Number.isFinite(a)&&a>0?a:(e=>{let t=Date.parse(e.createdAt);return Number.isFinite(t)?t:0})(e)},es=(e,t)=>{let a=er(t);if(!a)return 0;let r=er(e.name),l=er(String(e.meta.username||"")),s=er(String(e.meta.url||""));return r===a?3:r.startsWith(a)||l.startsWith(a)||s.startsWith(a)?2:r.includes(a)||l.includes(a)||s.includes(a)?1:0};function en(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return[...e].sort((e,r)=>{let l=el(e,t),s=el(r,t);if(s!==l)return s-l;let n=es(e,a),o=es(r,a);if(o!==n)return o-n;let i=+!!e.meta.favorite,c=+!!r.meta.favorite;if(c!==i)return c-i;let d=er(e.name),u=er(r.name),x=d.localeCompare(u);return 0!==x?x:e.id.localeCompare(r.id)})}let eo=e=>{let{credentials:t,latestAccessById:a,selectedId:s,searchQuery:n,onSearchChange:o,onSelect:i,onAdd:c,canAdd:d=!0,onImport:u,canImport:x=!0,onOpenGenerator:p,canGenerate:f=!0,onClearFilters:m,onCreateWithFilter:h,hasActiveFilters:g=!1,showSearch:y=!0,fieldSearchSuggestions:j=[],onApplySearchSuggestion:w,onRestoreAll:k,canRestoreAll:N=!1,onPurgeAll:S,canPurgeAll:C=!1,searchInputRef:A,className:I="w-[300px] h-full flex flex-col border-r border-[var(--color-credential-array-border,#8d8d95)]",leadingAction:E}=e,L=!!(k||S),R=(0,l.useMemo)(()=>en(t,a,n),[t,a,n]);return(0,r.jsxs)("div",{className:I,style:{fontSize:"var(--font-size-sm)"},children:[(0,r.jsx)("div",{className:"border-b border-[var(--color-credential-array-border,#8d8d95)] ".concat(y?"flex items-center":""),style:{gap:"var(--space-sm)",padding:"var(--space-md)"},children:y?(0,r.jsxs)(r.Fragment,{children:[E,(0,r.jsx)("div",{className:"flex-1",children:(0,r.jsx)(b.ks,{compact:!0,leftElement:(0,r.jsx)(v.A,{size:12}),placeholder:"Search...",value:n,onChange:e=>o(e.target.value),inputRef:A})}),L?(0,r.jsxs)(r.Fragment,{children:[k&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:k,icon:(0,r.jsx)(G.A,{size:10}),disabled:!N,title:"Restore all archived credentials","aria-label":"Restore all",children:"RESTORE ALL"}),S&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:S,icon:(0,r.jsx)(T.A,{size:10}),disabled:!C,title:"Purge all archived credentials","aria-label":"Purge all",children:"PURGE ALL"})]}):(0,r.jsxs)(r.Fragment,{children:[p&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:p,icon:(0,r.jsx)(Y.A,{size:10}),disabled:!f,title:"Generate password","aria-label":"Generate password",children:"GEN"}),u&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:u,icon:(0,r.jsx)(q.A,{size:10}),disabled:!x,title:x?"Import credentials":"Switch to Active to import credentials","aria-label":"Import credentials",children:"IMPORT"}),(0,r.jsx)(b.$n,{size:"sm",onClick:c,icon:(0,r.jsx)(z.A,{size:10}),disabled:!d,title:d?"Create credential":"Switch to Active to create credentials",children:"ADD"})]})]}):(0,r.jsxs)("div",{className:"w-full space-y-2",children:[E&&(0,r.jsx)("div",{className:"flex",children:E}),(0,r.jsx)("div",{className:"flex w-full items-center gap-2 overflow-hidden",children:L?(0,r.jsxs)(r.Fragment,{children:[k&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:k,icon:(0,r.jsx)(G.A,{size:10}),disabled:!N,title:"Restore all archived credentials","aria-label":"Restore all",className:"flex-1 min-w-0",children:"RESTORE ALL"}),S&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:S,icon:(0,r.jsx)(T.A,{size:10}),disabled:!C,title:"Purge all archived credentials","aria-label":"Purge all",className:"flex-1 min-w-0",children:"PURGE ALL"})]}):(0,r.jsxs)(r.Fragment,{children:[p&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:p,icon:(0,r.jsx)(Y.A,{size:10}),disabled:!f,title:"Generate password","aria-label":"Generate password",className:"flex-1 min-w-0",children:"GEN"}),u&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:u,icon:(0,r.jsx)(q.A,{size:10}),disabled:!x,title:x?"Import credentials":"Switch to Active to import credentials","aria-label":"Import credentials",className:"flex-1 min-w-0",children:"IMPORT"}),(0,r.jsx)(b.$n,{size:"sm",onClick:c,icon:(0,r.jsx)(z.A,{size:10}),disabled:!d,title:d?"Create credential":"Switch to Active to create credentials",className:"flex-1 min-w-0",children:"ADD"})]})})]})}),(0,r.jsx)("div",{className:"flex-1 overflow-y-auto overflow-x-hidden",children:0===R.length?(0,r.jsx)("div",{className:"flex items-center justify-center h-full px-4",children:(0,r.jsxs)("div",{className:"text-center tyvek-label corner-marks p-6",children:[(0,r.jsx)("span",{className:"label-specimen text-[var(--color-text-muted,#6b7280)] block",children:g?"NO SPECIMENS MATCH":"NO SPECIMENS FOUND"}),j.length>0&&w&&(0,r.jsx)("div",{className:"mt-3 flex flex-wrap items-center justify-center gap-2",children:j.map(e=>(0,r.jsx)("button",{type:"button",className:"font-mono text-[9px] px-2 py-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#ffffff)] text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:border-[var(--color-border-focus,#0a0a0a)]",onClick:()=>w(e),title:"Search by ".concat(e),children:e},e))}),g&&m&&(0,r.jsxs)("div",{className:"mt-3 flex flex-col items-center gap-2",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:m,children:"CLEAR FILTERS"}),h&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:h,children:"CREATE WITH FILTER"})]})]})}):R.map(e=>(0,r.jsx)(ea,{credential:e,selected:e.id===s,onClick:()=>i(e.id)},e.id))})]})};var ei=a(75426),ec=a(24033),ed=a(37354),eu=a(57828),ex=a(70532),ep=a(35299),ef=a(17369);let em=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),ev=e=>{let{label:t,value:a,copyValue:s,trailingValue:n,credentialId:o,fieldKey:i,isSensitive:c,onShowLargeType:d,sensitiveInteractionMode:u="default",actionsPosition:f="left",showActionsInHoverCopyMode:m=!1,sensitiveClickBehavior:v="reveal",disableLargeType:h=!1,renderMarkdown:y=!1}=e,[j,w]=(0,l.useState)(!1),[k,N]=(0,l.useState)(!1),[S,C]=(0,l.useState)(null),[A,I]=(0,l.useState)(!1),[E,T]=(0,l.useState)(null),[L,R]=(0,l.useState)(!1),z=(0,l.useRef)(null),O=(0,l.useRef)(null),P=(0,l.useRef)(null),F="hover-copy"===u||"markdown-hover-copy"===u,D="markdown-hover-copy"===u,_="hover-copy"===u,U=!F&&"copy"===v,H=!F||m,M=(0,l.useMemo)(()=>D&&null!=S?(0,ef.Q)(em(S),{preserveSingleLineBreaks:!0,decodeEscapedNewlines:!0}):"",[D,S]),W=(0,l.useMemo)(()=>y&&a?(0,ef.Q)(em(a),{preserveSingleLineBreaks:!0,decodeEscapedNewlines:!0}):"",[y,a]);(0,l.useEffect)(()=>()=>{O.current&&clearTimeout(O.current),P.current&&clearTimeout(P.current)},[]),(0,l.useEffect)(()=>{w(!1),N(!1),C(null),T(null),R(!1),O.current&&clearTimeout(O.current)},[o,i]);let K=(0,l.useCallback)(()=>{w(!0),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>w(!1),2e3)},[]),B=(0,l.useCallback)(e=>{C(e),N(!0),O.current&&clearTimeout(O.current),O.current=setTimeout(()=>{N(!1),C(null)},3e4)},[]),$=(0,l.useCallback)(async()=>{if(null!=S)return S;try{var e;let t=await x.FH.post(x.jI.Wallet,"/credentials/".concat(o,"/read")),a=await (0,p.DC)(t.encrypted),r=JSON.parse(a),l="string"==typeof r.type?r.type:"",s=(0,g.Dw)(l,i),n=null==(e=r.fields)?void 0:e.find(e=>(0,g.Dw)(l,e.key)===s||i===g.l3&&"value"===e.key);if(!n)return null;return n.value}catch(e){return null}},[o,i,S]),V=(0,l.useCallback)(async()=>{if(null!=S)return S;I(!0),T(null);try{let e=await $();return null==e&&T("Field not found"),e}catch(e){return T("Decryption failed -- try re-unlocking"),null}finally{I(!1)}},[$,S]),G=(0,l.useCallback)(async()=>{if(A)return;R(!1);let e=await $();null!=e&&(navigator.clipboard.writeText(e),K())},[$,A,K]),Y=(0,l.useCallback)(async()=>{if(A||k&&null!=S)return;R(!1);let e=await V();null!=e&&B(e)},[V,A,B,k,S]),q=(0,l.useCallback)(()=>{N(!1),C(null),O.current&&clearTimeout(O.current)},[]),X=(0,l.useCallback)(async()=>{R(!1);let e=await $();null!=e&&d(e)},[$,d]),J=(0,l.useCallback)(()=>{let e=null!=s?s:a;e&&(navigator.clipboard.writeText(e),K())},[s,a,K]),Q=(0,l.useCallback)(()=>{a&&(R(!1),d(a))},[d,a]),Z=(0,l.useCallback)(e=>e instanceof Element&&null!==e.closest("a"),[]),ee=(0,l.useCallback)(async()=>{if(!F||A)return;let e=S;null==e&&null!=(e=await V())&&C(e),null!=e&&(_&&B(e),navigator.clipboard.writeText(e),K())},[V,A,F,_,K,B,S]),et=(0,l.useCallback)(e=>{if(!_&&!U){if(e.stopPropagation(),F)return void ee();Y()}},[ee,Y,F,_,U]);if(!c){let e=(0,r.jsxs)("div",{className:"shrink-0 relative flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),J()},className:"inline-flex w-[56px] justify-start items-center gap-1 px-2 py-1 opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]",children:[(0,r.jsx)(ei.A,{size:10}),j?"Copied":"Copy"]}),(0,r.jsx)("button",{ref:z,onClick:e=>{e.stopPropagation(),R(!L)},className:"p-1 opacity-0 group-hover:opacity-100 transition-opacity text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]","aria-label":"Field actions for ".concat(t),children:(0,r.jsx)(ec.A,{size:12})}),(0,r.jsx)(b.AM,{isOpen:L,onClose:()=>R(!1),anchorEl:z.current,anchor:"right",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1 min-w-[160px]",children:[(0,r.jsxs)("button",{onClick:J,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ei.A,{size:10}),"Copy"]}),(0,r.jsxs)("button",{onClick:Q,disabled:!a||h,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors disabled:opacity-40",children:[(0,r.jsx)(ed.A,{size:10}),"Show in large type"]})]})})]});return y&&a?(0,r.jsxs)("div",{className:"flex flex-wrap lg:flex-nowrap gap-x-3 gap-y-1 py-2 px-2 cursor-pointer hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors group items-start",onClick:e=>{Z(e.target)||J()},children:["left"===f&&e,(0,r.jsx)("div",{className:"w-24 shrink-0",children:(0,r.jsx)("span",{className:"font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:j?"Copied":t})}),(0,r.jsx)("div",{className:"basis-full lg:basis-auto lg:flex-1 min-w-0 prose-mono max-w-none [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",dangerouslySetInnerHTML:{__html:W}}),"right"===f&&e]}):(0,r.jsxs)("div",{className:"flex flex-wrap lg:flex-nowrap items-center gap-x-3 gap-y-1 py-2 px-2 cursor-pointer hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors group",onClick:J,children:["left"===f&&e,(0,r.jsx)("div",{className:"w-24 shrink-0",children:(0,r.jsx)("span",{className:"font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:t})}),(0,r.jsxs)("div",{className:"basis-full lg:basis-auto lg:flex-1 min-w-0 min-h-[24px] flex items-center",children:[(0,r.jsx)("span",{className:"block min-w-0 font-mono text-[11px] text-[var(--color-text,#0a0a0a)] truncate whitespace-nowrap",children:j?"Copied":a||"--"}),n]}),"right"===f&&e]})}let ea=H?(0,r.jsxs)("div",{className:"shrink-0 relative flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),G()},className:"inline-flex w-[56px] justify-start items-center gap-1 px-2 py-1 opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]",children:[(0,r.jsx)(ei.A,{size:10}),j?"Copied":"Copy"]}),(0,r.jsx)("button",{ref:z,onClick:e=>{e.stopPropagation(),R(!L)},className:"p-1 opacity-0 group-hover:opacity-100 transition-opacity text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]","aria-label":"Field actions for ".concat(t),children:(0,r.jsx)(ec.A,{size:12})}),(0,r.jsx)(b.AM,{isOpen:L,onClose:()=>R(!1),anchorEl:z.current,anchor:"right",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1 min-w-[170px]",children:[(0,r.jsxs)("button",{onClick:G,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ei.A,{size:10}),"Copy"]}),!F&&!k&&(0,r.jsxs)("button",{onClick:Y,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(eu.A,{size:10}),"Reveal"]}),!F&&k&&(0,r.jsxs)("button",{onClick:q,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ex.A,{size:10}),"Hide"]}),!h&&(0,r.jsxs)("button",{onClick:X,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ed.A,{size:10}),"Show in large type"]})]})})]}):null;if(D){let e=(0,r.jsxs)("div",{className:"shrink-0 relative flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),G()},className:"inline-flex w-[56px] justify-start items-center gap-1 px-2 py-1 opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]",children:[(0,r.jsx)(ei.A,{size:10}),j?"Copied":"Copy"]}),(0,r.jsx)("button",{ref:z,onClick:e=>{e.stopPropagation(),R(!L)},className:"p-1 opacity-0 group-hover:opacity-100 transition-opacity text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)]","aria-label":"Field actions for ".concat(t),children:(0,r.jsx)(ec.A,{size:12})}),(0,r.jsx)(b.AM,{isOpen:L,onClose:()=>R(!1),anchorEl:z.current,anchor:"right",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1 min-w-[170px]",children:[(0,r.jsxs)("button",{onClick:G,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ei.A,{size:10}),"Copy"]}),k?(0,r.jsxs)("button",{onClick:q,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(ex.A,{size:10}),"Hide"]}):(0,r.jsxs)("button",{onClick:Y,className:"flex items-center gap-2 px-2 py-1.5 text-left font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] transition-colors",children:[(0,r.jsx)(eu.A,{size:10}),"Reveal"]})]})})]});return(0,r.jsxs)("div",{"data-testid":"credential-field-row-".concat(i),className:"flex flex-wrap lg:flex-nowrap gap-x-3 gap-y-1 py-2 px-2 group transition-colors cursor-pointer hover:bg-[var(--color-background-alt,#f4f4f5)] items-start",onClick:e=>{Z(e.target)||(k&&null!=S?G():Y())},children:["left"===f&&e,(0,r.jsx)("div",{className:"w-24 shrink-0",children:(0,r.jsx)("span",{className:"font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:j?"Copied":t})}),(0,r.jsx)("div",{"data-testid":"credential-field-value-".concat(i),className:"basis-full lg:basis-auto lg:flex-1 min-w-0",children:E?(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-danger,#ef4444)]",children:E}):A?(0,r.jsx)(ep.A,{size:12,className:"animate-spin text-[var(--color-text-muted,#6b7280)]"}):k&&null!=S?(0,r.jsx)("div",{className:"prose-mono max-w-none [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",dangerouslySetInnerHTML:{__html:M}}):(0,r.jsx)("span",{className:"font-mono text-[11px] text-[var(--color-text-muted,#6b7280)] tracking-wider",children:"••••••••"})}),"right"===f&&e]})}return(0,r.jsxs)("div",{"data-testid":"credential-field-row-".concat(i),className:"flex flex-wrap lg:flex-nowrap gap-x-3 gap-y-1 py-2 px-2 group transition-colors rounded-sm items-center ".concat(_||U?"cursor-pointer hover:bg-[var(--color-background-alt,#f4f4f5)]":""),onClick:()=>{if(_)return void ee();U&&G()},children:["left"===f&&ea,(0,r.jsx)("div",{className:"w-24 shrink-0",children:(0,r.jsx)("span",{className:"font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:t})}),(0,r.jsx)("div",{"data-testid":"credential-field-value-".concat(i),className:"basis-full lg:basis-auto lg:flex-1 min-w-0 transition-colors rounded-sm ".concat(F?"":"cursor-pointer"," ").concat("".concat(_||U?"min-h-[24px] flex items-center":"hover:bg-[var(--color-background-alt,#f4f4f5)] min-h-[24px] flex items-center"," px-1 py-0.5")),onClick:et,children:E?(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-danger,#ef4444)]",children:E}):A?(0,r.jsx)(ep.A,{size:12,className:"animate-spin text-[var(--color-text-muted,#6b7280)]"}):_?k&&null!=S?(0,r.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,r.jsx)("span",{className:"block min-w-0 font-mono text-[11px] text-[var(--color-text,#0a0a0a)] truncate whitespace-nowrap",children:S}),(0,r.jsx)("button",{onClick:e=>{e.stopPropagation(),q()},className:"shrink-0 text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:(0,r.jsx)(ex.A,{size:12})})]}):(0,r.jsxs)("div",{className:"w-full",children:[(0,r.jsx)("div",{"data-testid":"credential-field-barcode-".concat(i),className:"h-4 w-full bg-[repeating-linear-gradient(90deg,var(--color-text,#000),var(--color-text,#000)_1px,transparent_1px,transparent_3px)] opacity-30"}),(0,r.jsx)("div",{className:"mt-1 h-1.5 w-full",style:{backgroundImage:"repeating-linear-gradient(45deg, var(--color-text, #000), var(--color-text, #000) 5px, transparent 5px, transparent 10px)",opacity:.1}}),(0,r.jsx)("div",{className:"mt-1 font-mono text-[9px] text-[var(--color-text-muted,#6b7280)] tracking-wider uppercase",children:j?"Copied":"Click to reveal and copy"})]}):F?(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-text-muted,#6b7280)] tracking-wider uppercase",children:j?"Copied":null!=S?"Hover then click to copy":"Decrypting"}):k&&null!=S?(0,r.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,r.jsx)("span",{className:"block min-w-0 font-mono text-[11px] text-[var(--color-text,#0a0a0a)] truncate whitespace-nowrap",children:S}),(0,r.jsx)("button",{onClick:e=>{e.stopPropagation(),q()},className:"shrink-0 text-[var(--color-text-faint,#9ca3af)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:(0,r.jsx)(ex.A,{size:12})})]}):(0,r.jsx)("span",{className:"font-mono text-[11px] text-[var(--color-text-muted,#6b7280)] tracking-wider",children:j?"Copied":"••••••••"})}),"right"===f&&ea]})},eh=e=>{let{credentialId:t}=e,[a,s]=(0,l.useState)(null),[n,o]=(0,l.useState)(30),[i,c]=(0,l.useState)(null),d=(0,l.useCallback)(async()=>{try{let e=await x.FH.post(x.jI.Wallet,"/credentials/".concat(t,"/totp"));e.success&&e.code?(s(e.code),o(e.remaining),c(!0)):c(!1)}catch(e){c(!1)}},[t]);if((0,l.useEffect)(()=>{d()},[d]),(0,l.useEffect)(()=>{if(!0!==i)return;let e=setInterval(()=>{o(e=>e<=1?(d(),30):e-1)},1e3);return()=>clearInterval(e)},[i,d]),null===i||!1===i)return null;let u=n<=5,p=a?"".concat(a.slice(0,3)," ").concat(a.slice(3)):"--- ---",f=n/30;return(0,r.jsx)("div",{className:"space-y-0.5","data-testid":"totp-display",children:(0,r.jsx)(ev,{label:"2FA Code",value:p,copyValue:null!=a?a:void 0,credentialId:t,fieldKey:"totp_code",isSensitive:!1,trailingValue:(0,r.jsxs)("div",{className:"ml-2 flex items-center gap-1.5",children:[(0,r.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 18 18",className:"shrink-0",style:{transform:"rotate(-90deg)"},children:[(0,r.jsx)("circle",{cx:"9",cy:"9",r:"7",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"text-[var(--color-border,#d4d4d8)]",opacity:"0.3"}),(0,r.jsx)("circle",{cx:"9",cy:"9",r:"7",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeDasharray:"".concat(43.98*f," 43.98"),strokeLinecap:"round",className:u?"text-[var(--color-danger,#ef4444)]":"text-[var(--color-accent,#ccff00)]"})]}),(0,r.jsxs)("span",{className:"font-mono text-[9px] ".concat(u?"text-[var(--color-danger,#ef4444)]":"text-[var(--color-text-faint,#9ca3af)]"),children:[n,"s"]})]}),disableLargeType:!0,onShowLargeType:()=>{}})})},eg=e=>{let{isOpen:t,onClose:a,value:s}=e,[n,o]=(0,l.useState)(!1),i=(0,l.useRef)(null),c=Array.from(null!=s?s:""),d=(0,l.useCallback)(async()=>{try{await navigator.clipboard.writeText(s),o(!0),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>o(!1),2e3)}catch(e){}},[s]);return(0,l.useEffect)(()=>(t||o(!1),()=>{i.current&&clearTimeout(i.current)}),[t]),(0,r.jsx)(b.aF,{isOpen:t,onClose:a,title:"Expanded Value",size:"lg",contentClassName:"!p-0",footer:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:a,children:"Cancel"}),(0,r.jsx)(b.$n,{variant:"primary",size:"sm",onClick:()=>{d()},children:n?"COPIED":"COPY"})]}),children:(0,r.jsxs)("div",{className:"w-full min-h-[360px] px-6 py-8 flex flex-col items-center justify-center text-center",children:[(0,r.jsx)("div",{className:"w-full max-w-[900px] max-h-[70vh] overflow-auto px-1",children:(0,r.jsx)("div",{className:"grid gap-2 [grid-template-columns:repeat(auto-fit,minmax(56px,1fr))]",children:c.map((e,t)=>(0,r.jsxs)("div",{"data-testid":"large-type-char-".concat(t+1),className:"rounded-sm border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#ffffff)] px-1 py-2",children:[(0,r.jsx)("div",{className:"font-mono text-3xl font-bold leading-none text-[var(--color-text,#0a0a0a)] select-all",children:(e=>" "===e?"␠":"\n"===e?"↵":" "===e?"⇥":e)(e)}),(0,r.jsx)("div",{"data-testid":"large-type-index-".concat(t+1),className:"mt-2 font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:t+1})]},"".concat(t,"-").concat(e)))})}),(0,r.jsx)("div",{className:"mt-8 font-mono text-[9px] tracking-widest uppercase text-[var(--color-text-faint,#9ca3af)]",children:"Use copy to move this value to clipboard"})]})})};var eb=a(4788),ey=a(5917);let ej=[{value:"15m",label:"15 Minutes"},{value:"1h",label:"1 Hour"},{value:"24h",label:"24 Hours"},{value:"7d",label:"7 Days"},{value:"30d",label:"30 Days"}],ew=[{value:"anyone",label:"Anyone with link"},{value:"password",label:"Set password"}],ek=e=>{let{isOpen:t,onClose:a,credentialId:s,credentialName:n}=e,[o,i]=(0,l.useState)("24h"),[c,d]=(0,l.useState)("anyone"),[u,p]=(0,l.useState)(""),[f,m]=(0,l.useState)(!1),[v,h]=(0,l.useState)(!1),[g,y]=(0,l.useState)(!1),[j,w]=(0,l.useState)(null),[k,N]=(0,l.useState)(""),[S,C]=(0,l.useState)(!1),[A,I]=(0,l.useState)(!1),[E,T]=(0,l.useState)(null);(0,l.useEffect)(()=>{t&&(w(null),h(!1),N(""),T(null),C(!1))},[t]);let L=()=>"password"!==c||u.trim()?null:"Password is required when access mode is Set password",R=async()=>{w(null);let e=L();if(e)return void w(e);try{y(!0),h(!1);let e=await x.FH.post(x.jI.Wallet,"/credential-shares/gist",{credentialId:s,expiresAfter:o,accessMode:c,oneTimeOnly:f,shareBaseUrl:window.location.origin,..."password"===c?{password:u}:{}});N(e.gist.url),await navigator.clipboard.writeText(e.gist.url),h(!0),setTimeout(()=>h(!1),2e3)}catch(e){w('Failed to create secret gist. Check "gh auth status" in terminal. If needed, run "gh auth login".')}finally{y(!1)}},z=async()=>{T(null);let e=L();if(e)return void T(e);try{let e;I(!0);let t=(e=(await x.FH.post(x.jI.Wallet,"/credential-shares",{credentialId:s,expiresAfter:o,accessMode:c,oneTimeOnly:f,..."password"===c?{password:u}:{}})).share.token,"".concat(window.location.origin,"/share/").concat(e));await navigator.clipboard.writeText(t),C(!0),setTimeout(()=>C(!1),2e3)}catch(e){T(e instanceof Error?e.message:"Failed to generate share link")}finally{I(!1)}},O=()=>{w(null),h(!1),y(!1),N(""),T(null),C(!1),I(!1),a()};return(0,r.jsx)(b.aF,{isOpen:t,onClose:O,title:"Sharing ".concat(n),icon:(0,r.jsx)(eb.A,{size:16,className:"text-[var(--color-text,#0a0a0a)]"}),size:"md",footer:(0,r.jsx)("div",{className:"flex items-center justify-end gap-2",children:(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:O,children:"CLOSE"})}),children:(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsx)("div",{className:"font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:"GitHub Gist (Recommended)"}),(0,r.jsxs)("div",{className:"font-mono text-[9px] text-[var(--color-text-muted,#6b7280)]",children:["Check ",(0,r.jsx)("span",{className:"text-[var(--color-text,#0a0a0a)]",children:"`gh auth status`"})," first; run ",(0,r.jsx)("span",{className:"text-[var(--color-text,#0a0a0a)]",children:"`gh auth login`"})," only if needed."]}),(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[k?(0,r.jsx)("a",{href:k,target:"_blank",rel:"noreferrer",className:"flex-1 min-w-0 font-mono text-[9px] text-[var(--color-text-muted,#6b7280)] truncate hover:underline",title:k,children:k}):(0,r.jsx)("div",{className:"flex-1 min-w-0 font-mono text-[9px] text-[var(--color-text-muted,#6b7280)] truncate",children:"Click SHARE GIST to generate a link."}),(0,r.jsxs)(b.$n,{variant:"primary",size:"sm",onClick:R,loading:g,className:"shrink-0 whitespace-nowrap",children:[v?(0,r.jsx)(ey.A,{size:10}):(0,r.jsx)(ei.A,{size:10}),v?"COPIED":"SHARE GIST"]})]}),j&&(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-danger,#ef4444)]",children:j})]}),(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)("div",{className:"font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:"Share Link (Local)"}),(0,r.jsx)(b.UM,{label:"Link Expires After",options:ej,value:o,onChange:e=>i(e),compact:!0}),(0,r.jsx)(b.UM,{label:"Available To",options:ew,value:c,onChange:e=>d(e),compact:!0}),"password"===c&&(0,r.jsx)(b.ks,{label:"Share Password",type:"password",value:u,onChange:e=>p(e.target.value),placeholder:"Enter password",compact:!0}),(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsxs)("label",{className:"flex flex-1 min-w-0 items-center gap-2 cursor-pointer",children:[(0,r.jsx)("input",{type:"checkbox",checked:f,onChange:e=>m(e.target.checked),className:"accent-[var(--color-accent,#ccff00)]"}),(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-text,#0a0a0a)] truncate",children:"Can only be viewed one time"})]}),(0,r.jsxs)(b.$n,{variant:"primary",size:"sm",onClick:z,loading:A,className:"shrink-0 whitespace-nowrap",children:[S?(0,r.jsx)(ey.A,{size:10}):(0,r.jsx)(ei.A,{size:10}),S?"COPIED":"COPY LINK"]})]}),E&&(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-danger,#ef4444)]",children:E})]})]})})};var eN=a(93499);let eS=e=>{let{walletLink:t}=e,[a,s]=(0,l.useState)(null),[n,o]=(0,l.useState)(!0),[i,c]=(0,l.useState)(!1),d=t.chain.toLowerCase();(0,l.useEffect)(()=>{let e=!0;return(async()=>{try{let a=((await x.FH.get(x.jI.Wallet,"/wallets")).wallets||[]).find(e=>e.address.toLowerCase()===t.walletAddress.toLowerCase()&&e.chain.toLowerCase()===d)||null;e&&s(a)}catch(t){e&&s(null)}finally{e&&o(!1)}})(),()=>{e=!1}},[t.walletAddress,d,t.chain]);let u=(0,l.useMemo)(()=>(null==a?void 0:a.name)||(null==a?void 0:a.label)||t.label||"Linked Wallet",[a,t.label]);return(0,r.jsxs)("div",{className:"mt-2 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background-alt,#f4f4f5)] p-3",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,r.jsxs)("div",{className:"font-mono text-[9px] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] inline-flex items-center gap-1",children:[(0,r.jsx)(S.A,{size:11})," Linked Wallet"]}),(0,r.jsxs)("div",{className:"font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:[t.tier," \xb7 ",t.chain]})]}),(0,r.jsx)("div",{className:"font-mono text-[11px] text-[var(--color-text,#0a0a0a)] mb-1",children:u}),(0,r.jsx)("div",{className:"font-mono text-[10px] text-[var(--color-text-muted,#6b7280)] mb-2 break-all",children:t.walletAddress}),n?(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-text-muted,#6b7280)]",children:"Loading wallet state…"}):a?(0,r.jsxs)("div",{className:"font-mono text-[9px] text-[var(--color-success,#22c55e)] mb-2",children:["Wallet resolved",a.balance?" \xb7 Balance: ".concat(a.balance):""]}):(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-warning,#f59e0b)] mb-2",children:"Stale link: wallet not found in current wallet list"}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)("button",{type:"button",className:"px-2 py-1 border border-[var(--color-border,#d4d4d8)] font-mono text-[9px]",onClick:async()=>{await navigator.clipboard.writeText(t.walletAddress),c(!0),setTimeout(()=>c(!1),1200)},children:(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(ei.A,{size:10})," ",i?"COPIED":(e=>"".concat(e.slice(0,6),"...").concat(e.slice(-4)))(t.walletAddress)]})}),(0,r.jsxs)("a",{href:function(e,t){return"solana"===e||"solana-devnet"===e?"https://solscan.io/account/".concat(t):"polygon"===e?"https://polygonscan.com/address/".concat(t):"ethereum"===e?"https://etherscan.io/address/".concat(t):"https://basescan.org/address/".concat(t)}(d,t.walletAddress),target:"_blank",rel:"noreferrer",className:"px-2 py-1 border border-[var(--color-border,#d4d4d8)] font-mono text-[9px] inline-flex items-center gap-1",children:[(0,r.jsx)(eN.A,{size:10})," Explorer"]})]})]})};function eC(e){return new Date(e).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}let eA=e=>{var t;let{credential:a,agentName:s,lifecycle:n,onEdit:o,onDelete:i,onRestore:c,onDuplicate:d,onFavoriteChange:u}=e,[p,f]=(0,l.useState)(null),[m,v]=(0,l.useState)(!1),[h,y]=(0,l.useState)(!1),[j,w]=(0,l.useState)(null),[k,N]=(0,l.useState)(!1),[S,C]=(0,l.useState)(null),[A,I]=(0,l.useState)(null),[E,T]=(0,l.useState)(""),[L,R]=(0,l.useState)(!!a.meta.favorite),[z,O]=(0,l.useState)(!1),F=e=>{f(e)};(0,l.useEffect)(()=>{w(null),N(!1),C(null),I(null),T(""),R(!!a.meta.favorite),O(!1)},[a.id,a.meta.favorite]);let D=(0,l.useCallback)(async()=>{N(!0),w(null);try{let e=await x.FH.post(x.jI.Wallet,"/credentials/".concat(a.id,"/reauth"));C(e.authorization_url||null),I(e.state||null),w(e.message||"Authorization URL generated. Complete provider consent, then paste code.")}catch(e){w(e instanceof Error?e.message:"Failed to start re-auth")}finally{N(!1)}},[a.id]),_=(0,l.useCallback)(async()=>{if(!E.trim()||!A)return void w("Enter authorization code after consent to complete re-auth.");N(!0);try{let e=await x.FH.post(x.jI.Wallet,"/credentials/".concat(a.id,"/reauth"),{code:E.trim(),state:A});w(e.message||"Re-auth complete. Refresh credential details."),T("")}catch(e){w(e instanceof Error?e.message:"Failed to complete re-auth")}finally{N(!1)}},[a.id,E,A]),U=(0,l.useCallback)(async()=>{if(z)return;let e=!L;R(e),O(!0);try{await x.FH.put(x.jI.Wallet,"/credentials/".concat(a.id),{meta:{...a.meta,favorite:e}}),null==u||u(a.id,e)}catch(t){R(!e),console.error("[CredentialDetail] failed to update favorite",t)}finally{O(!1)}},[a.id,a.meta,z,L,u]),H={login:"Login",card:"Card",sso:"SSO Login",note:"Note",plain_note:"Plain Note",hot_wallet:"Hot Wallet",apikey:"API Key",custom:"Key / Value",oauth2:"OAuth2",ssh:"SSH Key",gpg:"GPG Key"}[a.type]||a.type.charAt(0).toUpperCase()+a.type.slice(1),M=null!=(t=a.meta.sensitive_field_keys)?t:[],W=a.meta.walletLink,K="active"===n,B=K?"ARCHIVE":"archive"===n?"DELETE":"PURGE",$=K?"Archive Credential":"archive"===n?"Delete Credential":"Purge Credential",V=K?"This credential will be moved to Archive.":"archive"===n?"This credential will be moved to Recently Deleted.":"This credential will be permanently deleted now.",G=ee(a),Y={sensitiveClickBehavior:"copy"};return(0,r.jsxs)("div",{className:"h-full min-h-0 p-6 flex flex-col relative",children:[(0,r.jsx)("div",{className:"absolute top-6 -left-1 text-vertical label-specimen-sm text-[var(--color-text-faint,#9ca3af)] select-none opacity-40 hidden lg:block",children:"CLASSIFIED"}),(0,r.jsxs)("div",{className:"mb-6",children:[(0,r.jsxs)("div",{className:"group/title flex items-center gap-2",children:[(0,r.jsx)("h2",{className:"font-mono font-bold text-lg text-[var(--color-text,#0a0a0a)]",children:G}),(0,r.jsx)("button",{type:"button",onClick:()=>void U(),disabled:z,"aria-label":L?"Remove from favorites":"Add to favorites",title:L?"Remove from favorites":"Add to favorites","data-testid":"favorite-toggle",className:"inline-flex h-5 w-5 items-center justify-center transition-opacity disabled:opacity-60 ".concat(L?"opacity-100":"opacity-0 group-hover/title:opacity-100 focus-visible:opacity-100"),children:(0,r.jsx)(P.A,{size:13,className:"flex-shrink-0 text-[var(--color-favorite,#ff4d00)] ".concat(L?"fill-[var(--color-favorite,#ff4d00)]":"fill-transparent")})})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2 mt-1",children:[(0,r.jsx)("span",{className:"shard-start inline-block bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-[8px] font-bold uppercase tracking-widest px-2 py-0.5",children:H}),(0,r.jsx)("span",{className:"font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:s})]})]}),(0,r.jsxs)("div",{className:"flex-1 min-h-0 overflow-y-auto pr-1",children:[(0,r.jsxs)("div",{className:"space-y-0.5",children:["login"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"URL",value:a.meta.url,credentialId:a.id,fieldKey:g.u.login.url,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Username",value:a.meta.username,credentialId:a.id,fieldKey:g.u.login.username,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Password",credentialId:a.id,fieldKey:g.u.login.password,isSensitive:!0,onShowLargeType:F,...Y}),K&&(0,r.jsx)(eh,{credentialId:a.id}),M.includes(g.u.login.notes)&&(0,r.jsx)(ev,{label:"Notes",credentialId:a.id,fieldKey:g.u.login.notes,isSensitive:!0,onShowLargeType:F,...Y})]}),"card"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Cardholder",value:a.meta.cardholder,credentialId:a.id,fieldKey:g.u.card.cardholder,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Brand",value:a.meta.brand,credentialId:a.id,fieldKey:g.u.card.brand,isSensitive:!1,onShowLargeType:F}),a.meta.last4&&(0,r.jsx)(ev,{label:"Card",value:"•••• ".concat(a.meta.last4),credentialId:a.id,fieldKey:g.u.card.last4,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Number",credentialId:a.id,fieldKey:g.u.card.number,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Expiry",credentialId:a.id,fieldKey:g.u.card.expiry,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"CVV",credentialId:a.id,fieldKey:g.u.card.cvv,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Billing ZIP",value:a.meta.billing_zip,credentialId:a.id,fieldKey:g.u.card.billingZip,isSensitive:!1,onShowLargeType:F}),M.includes(g.u.card.notes)&&(0,r.jsx)(ev,{label:"Notes",credentialId:a.id,fieldKey:g.u.card.notes,isSensitive:!0,onShowLargeType:F,...Y})]}),"sso"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Website",value:a.meta.website,credentialId:a.id,fieldKey:g.u.sso.website,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Provider",value:a.meta.provider,credentialId:a.id,fieldKey:g.u.sso.provider,isSensitive:!1,onShowLargeType:F}),a.meta.identifier&&(0,r.jsx)(ev,{label:"Identifier",value:a.meta.identifier,credentialId:a.id,fieldKey:g.u.sso.identifier,isSensitive:!1,onShowLargeType:F})]}),"note"===a.type&&(0,r.jsx)(ev,{label:"Content",credentialId:a.id,fieldKey:g.l3,isSensitive:!0,onShowLargeType:F,sensitiveInteractionMode:"markdown-hover-copy",disableLargeType:!0}),"plain_note"===a.type&&(0,r.jsx)(ev,{label:"Content",value:a.meta[g.l3]||a.meta.value,credentialId:a.id,fieldKey:g.l3,isSensitive:!1,onShowLargeType:F,renderMarkdown:!0,disableLargeType:!0}),"apikey"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Key",value:a.meta.key,credentialId:a.id,fieldKey:g.u.apikey.key,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Value",credentialId:a.id,fieldKey:g.u.apikey.value,isSensitive:!0,onShowLargeType:F,sensitiveClickBehavior:"copy"})]}),"hot_wallet"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Address",value:a.meta.address||(null==W?void 0:W.walletAddress),credentialId:a.id,fieldKey:g.u.hot_wallet.address,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Chain",value:a.meta.chain||(null==W?void 0:W.chain),credentialId:a.id,fieldKey:g.u.hot_wallet.chain,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Private Key",credentialId:a.id,fieldKey:g.u.hot_wallet.privateKey,isSensitive:!0,onShowLargeType:F,...Y})]}),"custom"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Key",value:a.meta.primaryKey||"value",credentialId:a.id,fieldKey:"primaryKey",isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Value",credentialId:a.id,fieldKey:a.meta.primaryKey||g.u.custom.value,isSensitive:!0,onShowLargeType:F,...Y})]}),"ssh"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Fingerprint",value:a.meta.fingerprint,credentialId:a.id,fieldKey:g.u.ssh.fingerprint,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Key Type",value:a.meta.key_type,credentialId:a.id,fieldKey:g.u.ssh.keyType,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Hosts",value:Array.isArray(a.meta.hosts)?a.meta.hosts.join(", "):void 0,credentialId:a.id,fieldKey:g.u.ssh.hosts,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Public Key",value:a.meta.public_key,credentialId:a.id,fieldKey:g.u.ssh.publicKey,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Private Key",credentialId:a.id,fieldKey:g.u.ssh.privateKey,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Passphrase",credentialId:a.id,fieldKey:g.u.ssh.passphrase,isSensitive:!0,onShowLargeType:F,...Y})]}),"gpg"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Fingerprint",value:a.meta.fingerprint,credentialId:a.id,fieldKey:g.u.gpg.fingerprint,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Key ID",value:a.meta.key_id,credentialId:a.id,fieldKey:g.u.gpg.keyId,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"UID Email",value:a.meta.uid_email,credentialId:a.id,fieldKey:g.u.gpg.uidEmail,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Expires At",value:a.meta.expires_at,credentialId:a.id,fieldKey:g.u.gpg.expiresAt,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Public Key",value:a.meta.public_key,credentialId:a.id,fieldKey:g.u.gpg.publicKey,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Private Key",credentialId:a.id,fieldKey:g.u.gpg.privateKey,isSensitive:!0,onShowLargeType:F,...Y})]}),"oauth2"===a.type&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ev,{label:"Token Endpoint",value:a.meta.token_endpoint,credentialId:a.id,fieldKey:g.u.oauth2.tokenEndpoint,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Scopes",value:a.meta.scopes,credentialId:a.id,fieldKey:g.u.oauth2.scopes,isSensitive:!1,onShowLargeType:F}),(0,r.jsx)(ev,{label:"Auth Method",value:a.meta.auth_method,credentialId:a.id,fieldKey:g.u.oauth2.authMethod,isSensitive:!1,onShowLargeType:F}),(a.meta.needs_reauth||S)&&(0,r.jsxs)("div",{className:"px-2 py-2 my-1 border border-[var(--color-danger,#ef4444)]/30 bg-[var(--color-danger,#ef4444)]/10 text-[var(--color-danger,#ef4444)] font-mono text-[10px]",children:["⚠️ Re-authentication required",!!a.meta.reauth_reason&&(0,r.jsx)("span",{className:"block text-[9px] text-[var(--color-danger,#ef4444)]/70 mt-0.5",children:String(a.meta.reauth_reason)}),(0,r.jsx)("button",{className:"mt-1 px-2 py-0.5 bg-[var(--color-danger,#ef4444)]/20 hover:bg-[var(--color-danger,#ef4444)]/30 text-[var(--color-danger,#ef4444)] text-[9px] font-bold uppercase tracking-wider disabled:opacity-50",onClick:D,disabled:k,children:k?"Loading…":"Start Re-auth"}),S&&(0,r.jsx)("a",{href:S,target:"_blank",rel:"noopener noreferrer",className:"mt-1 ml-2 inline-block px-2 py-0.5 bg-[var(--color-danger,#ef4444)]/20 hover:bg-[var(--color-danger,#ef4444)]/30 text-[var(--color-danger,#ef4444)] text-[9px] font-bold uppercase tracking-wider",children:"Open Consent"}),A&&(0,r.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,r.jsx)("input",{value:E,onChange:e=>T(e.target.value),placeholder:"Paste authorization code",className:"flex-1 px-2 py-1 border border-[var(--color-danger,#ef4444)]/30 bg-transparent text-[9px]"}),(0,r.jsx)("button",{className:"px-2 py-1 bg-[var(--color-danger,#ef4444)]/20 hover:bg-[var(--color-danger,#ef4444)]/30 text-[var(--color-danger,#ef4444)] text-[9px] font-bold uppercase tracking-wider disabled:opacity-50",onClick:_,disabled:k||!E.trim(),children:"Complete Re-auth"})]}),j&&(0,r.jsx)("div",{className:"mt-1 text-[9px] text-[var(--color-danger,#ef4444)]/90 break-words",children:j})]}),a.meta.last_refreshed&&(0,r.jsxs)("div",{className:"px-1 py-1",children:[(0,r.jsxs)("span",{className:"font-mono text-[9px] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:["Last Refreshed:"," "]}),(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-text-muted,#6b7280)]",children:new Date(String(a.meta.last_refreshed)).toLocaleString()})]}),(()=>{let e=a.meta.expires_at,t=Math.floor(Date.now()/1e3),l=!e||t>=e,s=e?l?"Expired — will auto-refresh on next read":"Valid for ".concat(Math.floor((e-t)/60),"m"):"No token yet";return(0,r.jsxs)("div",{className:"px-1 py-2",children:[(0,r.jsxs)("span",{className:"font-mono text-[9px] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:["Token Status:"," "]}),(0,r.jsx)("span",{className:"font-mono text-[10px] font-bold",style:{color:l?"var(--color-danger,#ef4444)":"var(--color-success,#00c853)"},children:s})]})})(),(0,r.jsx)(ev,{label:"Access Token",credentialId:a.id,fieldKey:g.u.oauth2.accessToken,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Refresh Token",credentialId:a.id,fieldKey:g.u.oauth2.refreshToken,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Client ID",credentialId:a.id,fieldKey:g.u.oauth2.clientId,isSensitive:!0,onShowLargeType:F,...Y}),(0,r.jsx)(ev,{label:"Client Secret",credentialId:a.id,fieldKey:g.u.oauth2.clientSecret,isSensitive:!0,onShowLargeType:F,...Y})]})]}),W&&(0,r.jsx)(eS,{walletLink:W}),a.meta.tags&&a.meta.tags.length>0&&(0,r.jsx)("div",{className:"mt-4 flex flex-wrap gap-1.5",children:a.meta.tags.map(e=>(0,r.jsx)("span",{className:"inline-block font-mono text-[9px] px-2 py-0.5 bg-[var(--color-accent,#ccff00)]/10 text-[var(--color-text-muted,#6b7280)]",children:e},e))})]}),(0,r.jsx)("div",{className:"mt-4 pt-3 border-t border-[var(--color-border,#d4d4d8)] shrink-0",children:(0,r.jsxs)("div",{className:"font-mono text-[8px] text-[var(--color-text-faint,#9ca3af)] space-y-0.5",children:[(0,r.jsxs)("div",{children:["Created ",eC(a.createdAt)]}),(0,r.jsxs)("div",{children:["Updated ",eC(a.updatedAt)]}),a.archivedAt&&(0,r.jsxs)("div",{children:["Archived ",eC(a.archivedAt)]}),a.deletedAt&&(0,r.jsxs)("div",{children:["Deleted ",eC(a.deletedAt)]}),(0,r.jsxs)("div",{children:["Agent: ",s]})]})}),(0,r.jsxs)("div",{className:"mt-4 flex gap-2 shrink-0",children:[K&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>y(!0),children:"SHARE"}),K&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:o,children:"EDIT"}),K&&d&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:d,children:"DUPLICATE"}),!K&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:c,children:"archive"===n?"RESTORE":"RESTORE TO ARCHIVE"}),(0,r.jsx)(b.$n,{variant:"danger",size:"sm",onClick:()=>v(!0),children:B})]}),(0,r.jsx)(b.Rw,{isOpen:m,onClose:()=>v(!1),onConfirm:()=>{v(!1),i()},title:$,message:V,confirmText:"recently_deleted"===n?"PURGE":"CONFIRM",variant:"recently_deleted"===n?"danger":"warning"}),(0,r.jsx)(eg,{isOpen:null!=p,onClose:()=>f(null),value:null!=p?p:""}),(0,r.jsx)(ek,{isOpen:h,onClose:()=>y(!1),credentialId:a.id,credentialName:G})]})},eI=e=>{let{variant:t,onAdd:a}=e;return"no-selection"===t?(0,r.jsx)("div",{className:"flex-1 flex items-center justify-center h-full",children:(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)(I.A,{size:32,className:"mx-auto mb-3 text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("div",{className:"font-mono text-[11px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Select a credential from the list"})]})}):"empty-lifecycle"===t?(0,r.jsx)("div",{className:"flex-1 flex items-center justify-center h-full",children:(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)(I.A,{size:32,className:"mx-auto mb-3 text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("div",{className:"font-mono text-[11px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-1",children:"No credentials in this section"})]})}):(0,r.jsx)("div",{className:"flex-1 flex items-center justify-center h-full",children:(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)(I.A,{size:32,className:"mx-auto mb-3 text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("div",{className:"font-mono text-[11px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-1",children:"Your agent is empty"}),(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-text-faint,#9ca3af)] mb-4",children:"Create your first credential"}),(0,r.jsx)(b.$n,{size:"sm",onClick:a,icon:(0,r.jsx)(z.A,{size:10}),children:"ADD"})]})})};var eE=a(53020),eT=a(6132),eL=a(42529);let eR=[{label:"1Password",format:"1password-csv",supported:!0},{label:"Bitwarden",format:"bitwarden-csv",supported:!0},{label:"Chrome",format:"chrome-csv",supported:!0},{label:"Firefox",format:"firefox-csv",supported:!0},{label:"iCloud Keychain",format:"icloud-csv",supported:!0},{label:"LastPass",format:"lastpass-csv",supported:!0}],ez={skip:"Skip",rename:"Rename",overwrite:"Create Anyway"};function eO(){let e=localStorage.getItem("auramaxx_admin_token");return e||sessionStorage.getItem("auramaxx_admin_token")}let eP=e=>{let{isOpen:t,onClose:a,onComplete:s,agents:n,selectedAgentId:o,onSelectedAgentIdChange:i,onAddAgent:c,walletBaseUrl:d}=e,[u,x]=(0,l.useState)("select"),[p,f]=(0,l.useState)("1password-csv"),[m,v]=(0,l.useState)(null),[h,g]=(0,l.useState)("skip"),[y,j]=(0,l.useState)(null),[w,k]=(0,l.useState)(null),[S,C]=(0,l.useState)(!1),[A,I]=(0,l.useState)(null),E=(0,l.useRef)(null),T=(0,l.useMemo)(()=>n.map(e=>({value:e.id,label:e.name||(e.isPrimary?"Primary":"Agent ".concat(e.id.slice(0,6)))})),[n]),L=(0,l.useMemo)(()=>n.find(e=>e.id===o)||null,[n,o]),R=(0,l.useCallback)(()=>{x("select"),f("1password-csv"),v(null),g("skip"),j(null),k(null),C(!1),I(null),E.current&&(E.current.value="")},[]),z=(0,l.useCallback)(()=>{R(),a()},[R,a]),O=(0,l.useCallback)(e=>{var t,a;let r=null!=(a=null==(t=e.target.files)?void 0:t[0])?a:null;if(r&&r.size>0xa00000){I("File too large (".concat((r.size/1024/1024).toFixed(1),"MB). Maximum is 10MB.")),v(null),E.current&&(E.current.value="");return}v(r),I(null)},[]),P=(0,l.useCallback)(e=>{if(!m)return null;let t=new FormData;return t.append("file",m),t.append("format",p),t.append("agentId",o||"primary"),e&&t.append("dryRun","true"),t.append("duplicateStrategy",h),t},[m,p,o,h]),F=(0,l.useCallback)(async()=>{if(m){C(!0),I(null);try{let e=P(!0);if(!e)return;let t=eO(),a=await fetch("".concat(d,"/credentials/import"),{method:"POST",headers:t?{Authorization:"Bearer ".concat(t)}:{},body:e});if(!(a.headers.get("content-type")||"").includes("application/json"))return void I("Server error: ".concat(a.status," ").concat(a.statusText));let r=await a.json();if(!a.ok||!r.success)return void I(r.error||"Request failed: ".concat(a.status));j(r),x("preview")}catch(e){I(e instanceof Error?e.message:"Preview failed")}finally{C(!1)}}},[m,P,d]),D=(0,l.useCallback)(async()=>{C(!0),I(null);try{let e=P(!1);if(!e)return;let t=eO(),a=await fetch("".concat(d,"/credentials/import"),{method:"POST",headers:t?{Authorization:"Bearer ".concat(t)}:{},body:e});if(!(a.headers.get("content-type")||"").includes("application/json"))return void I("Server error: ".concat(a.status," ").concat(a.statusText));let r=await a.json();if(!a.ok)return void I(r.error||"Request failed: ".concat(a.status));k(r),x("result")}catch(e){I(e instanceof Error?e.message:"Import failed")}finally{C(!1)}},[P,d]),_=(0,l.useCallback)(()=>{s(),z()},[s,z]),U=eR.find(e=>e.format===p);return(0,r.jsxs)(b.aF,{isOpen:t,onClose:z,title:"Import Credentials",size:"md",footer:(()=>{if("select"===u)return(0,r.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:z,children:"CANCEL"}),(0,r.jsx)(b.$n,{size:"sm",onClick:F,loading:S,disabled:!m||!(null==U?void 0:U.supported),children:"PREVIEW"})]});if("preview"===u&&y){let e="skip"===h?y.total-y.duplicates:y.total;return(0,r.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>{x("select"),I(null),E.current&&(E.current.value="")},children:"BACK"}),(0,r.jsxs)(b.$n,{size:"sm",onClick:D,loading:S,disabled:0===y.credentials.length,children:["IMPORT ",e," CREDENTIAL",1!==e?"S":""]})]})}return"result"===u?(0,r.jsx)("div",{className:"flex justify-end",children:(0,r.jsx)(b.$n,{size:"sm",onClick:_,children:"DONE"})}):null})(),children:["select"===u&&(0,r.jsxs)("div",{className:"space-y-5",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] font-bold tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-2",children:"Source"}),(0,r.jsx)(b.O6,{ariaLabel:"Import source",value:p,onChange:e=>{let t=eR.find(t=>t.format===e);(null==t?void 0:t.supported)&&f(t.format)},options:eR.map(e=>({value:e.format,label:e.label,description:e.supported?void 0:"Coming soon",icon:(0,r.jsx)(N.A,{size:12})}))})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] font-bold tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-2",children:"File"}),(0,r.jsx)("input",{ref:E,type:"file",accept:".csv",onChange:O,className:"hidden"}),(0,r.jsxs)("button",{onClick:()=>{var e;return null==(e=E.current)?void 0:e.click()},className:"w-full flex items-center justify-center gap-2 px-4 py-4 border-2 border-dashed border-[var(--color-border,#d4d4d8)] hover:border-[var(--color-text-muted,#6b7280)] transition-colors",children:[(0,r.jsx)(q.A,{size:14,className:"text-[var(--color-text-muted,#6b7280)]"}),(0,r.jsx)("span",{className:"text-[10px] font-mono tracking-wider text-[var(--color-text-muted,#6b7280)]",children:m?m.name:"Choose CSV file"})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"flex items-end gap-2",children:[(0,r.jsx)("div",{className:"flex-1",children:(0,r.jsx)(b.UM,{label:"Target Agent",ariaLabel:"TARGET AGENT",options:T,value:o,onChange:i,compact:!0,searchable:!0,menuPosition:"top",searchPlaceholder:"Search agent...",emptyMessage:"No agent matches"})}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:c,className:"!h-[var(--control-height-sm)] !px-3",children:"ADD"})]}),L&&!L.isUnlocked&&(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-warning,#ff4d00)] border border-[var(--color-warning,#ff4d00)]/30 bg-[var(--color-warning,#ff4d00)]/10 px-3 py-2",children:"Selected agent is locked. Unlock it before preview/import."})]}),A&&(0,r.jsxs)("div",{className:"flex items-start gap-2 px-3 py-2 bg-red-50 border border-red-200",children:[(0,r.jsx)(eT.A,{size:12,className:"text-red-500 flex-shrink-0 mt-0.5"}),(0,r.jsx)("span",{className:"text-[10px] font-mono text-red-700",children:A})]})]}),"preview"===u&&(y?(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"flex gap-4",children:[(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-[18px] font-bold font-mono text-[var(--color-text,#0a0a0a)]",children:y.total}),(0,r.jsx)("div",{className:"text-[8px] font-mono tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Total"})]}),y.duplicates>0&&(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-[18px] font-bold font-mono text-amber-600",children:y.duplicates}),(0,r.jsx)("div",{className:"text-[8px] font-mono tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Duplicates"})]})]}),(0,r.jsxs)("div",{className:"max-h-[240px] overflow-y-auto border border-[var(--color-border,#d4d4d8)]",children:[0===y.credentials.length?(0,r.jsx)("div",{className:"px-4 py-8 text-center text-[10px] font-mono text-[var(--color-text-muted,#6b7280)]",children:"No credentials found in file"}):y.credentials.map((e,t)=>(0,r.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 border-b border-[var(--color-border,#d4d4d8)] last:border-b-0 ".concat(e.isDuplicate?"bg-amber-50/50":""),children:[(0,r.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,r.jsx)("div",{className:"text-[10px] font-mono text-[var(--color-text,#0a0a0a)] truncate",children:e.name}),e.url&&(0,r.jsx)("div",{className:"text-[8px] font-mono text-[var(--color-text-faint,#9ca3af)] truncate",children:e.url})]}),(0,r.jsx)("span",{className:"text-[8px] font-mono tracking-wider uppercase text-[var(--color-text-faint,#9ca3af)] flex-shrink-0",children:e.type}),e.isDuplicate&&(0,r.jsx)("span",{className:"text-[8px] font-mono tracking-wider uppercase text-amber-600 flex-shrink-0",children:"DUP"})]},t)),y.total>y.credentials.length&&(0,r.jsxs)("div",{className:"px-3 py-1.5 text-[9px] font-mono text-[var(--color-text-faint,#9ca3af)] text-center",children:["+ ",y.total-y.credentials.length," more"]})]}),y.duplicates>0&&(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] font-bold tracking-widest uppercase text-[var(--color-text-muted,#6b7280)] mb-1.5",children:"Duplicate handling"}),(0,r.jsx)("div",{className:"flex gap-1.5",children:["skip","rename","overwrite"].map(e=>(0,r.jsx)("button",{onClick:()=>g(e),className:"px-3 py-1.5 text-[9px] font-mono tracking-wider uppercase border transition-colors ".concat(h===e?"border-[var(--color-accent,#ccff00)] bg-[var(--color-accent,#ccff00)]/10 text-[var(--color-text,#0a0a0a)]":"border-[var(--color-border,#d4d4d8)] text-[var(--color-text-muted,#6b7280)] hover:bg-[var(--color-background-alt,#f4f4f5)]"),children:ez[e]},e))})]}),A&&(0,r.jsxs)("div",{className:"flex items-start gap-2 px-3 py-2 bg-red-50 border border-red-200",children:[(0,r.jsx)(eT.A,{size:12,className:"text-red-500 flex-shrink-0 mt-0.5"}),(0,r.jsx)("span",{className:"text-[10px] font-mono text-red-700",children:A})]})]}):null),"result"===u&&(()=>{if(!w)return null;let e=w.errors.length>0;return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[w.success?(0,r.jsx)(eL.A,{size:20,className:"text-green-600"}):(0,r.jsx)(eT.A,{size:20,className:"text-red-500"}),(0,r.jsx)("div",{children:(0,r.jsx)("div",{className:"text-[11px] font-mono font-bold text-[var(--color-text,#0a0a0a)]",children:w.success?"Import Complete":"Import Failed"})})]}),(0,r.jsxs)("div",{className:"flex gap-6",children:[(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-[18px] font-bold font-mono text-green-600",children:w.imported}),(0,r.jsx)("div",{className:"text-[8px] font-mono tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Imported"})]}),w.skipped>0&&(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-[18px] font-bold font-mono text-[var(--color-text-muted,#6b7280)]",children:w.skipped}),(0,r.jsx)("div",{className:"text-[8px] font-mono tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Skipped"})]}),e&&(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-[18px] font-bold font-mono text-red-500",children:w.errors.length}),(0,r.jsx)("div",{className:"text-[8px] font-mono tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Errors"})]})]}),e&&(0,r.jsx)("div",{className:"max-h-[120px] overflow-y-auto border border-red-200 bg-red-50",children:w.errors.map((e,t)=>(0,r.jsxs)("div",{className:"px-3 py-1 text-[9px] font-mono text-red-700 border-b border-red-100 last:border-b-0",children:["Row ",e.row,": ",e.reason]},t))})]})})()]})};var eF=a(6345),eD=a(52056),e_=a(62520),eU=a(43721);let eH={CREDENTIAL_SCOPE_DENIED:"SCOPE_DENY",TOKEN_PERMISSION_DENIED:"SCOPE_DENY",TOKEN_REVOKED:"TOKEN_REVOKED",TOKEN_EXPIRED:"TOKEN_EXPIRED",RATE_LIMIT:"RATE_LIMITED",RATE_LIMITED:"RATE_LIMITED",CREDENTIAL_NOT_FOUND:"NOT_FOUND",CREDENTIAL_TOTP_NOT_CONFIGURED:"NOT_FOUND",TOKEN_AGENT_PUBKEY_MISSING:"MISSING_KEY",INTERNAL_ERROR:"INTERNAL_ERROR",ALLOW:"UNKNOWN"};function eM(e,t,a){let r="string"==typeof e?e.trim().toUpperCase():"";return"ALLOW"===r?"ALLOW":"DENY"===r?"DENY":"RATE_LIMIT"===r?"RATE_LIMIT":"ERROR"===r?"ERROR":!0===t?"ALLOW":!1===t&&(null!=a?a:0)===429?"RATE_LIMIT":!1===t?"DENY":(null!=a?a:0)>=500?"ERROR":"UNKNOWN"}function eW(e){var t;return null!=(t=eH["string"==typeof e?e.trim().toUpperCase():""])?t:"UNKNOWN"}function eK(e){return e.tokenHash?"HIGH":e.agentId?"MEDIUM":"LOW"}function eB(e){var t,a,r;let l="string"==typeof e.decision?e.decision:void 0,s="string"==typeof e.reasonCode?e.reasonCode:void 0,n="string"==typeof e.tokenHash?e.tokenHash:void 0,o="string"==typeof e.agentId?e.agentId:void 0,i=e.timestamp,c=new Date("string"==typeof i||"number"==typeof i?i:Date.now()).getTime();return{id:String(null!=(a=e.id)?a:"".concat(c,"-").concat(null!=(t=null!=n?n:o)?t:"unknown")),timestamp:c,tokenKey:null!=(r=null!=n?n:o)?r:"unknown",tokenHash:n,agentId:o,endpoint:"string"==typeof e.action?e.action:void 0,credentialKey:"string"==typeof e.credentialId?e.credentialId:void 0,sourceVersion:"task40-audit-v1",decision:eM(l,e.allowed,e.httpStatus),reasonCode:eW(s),rawDecision:l,rawReasonCode:s,confidence:eK({tokenHash:n,agentId:o})}}function e$(e){var t,a,r;let l="object"==typeof e.data&&null!==e.data?e.data:{},s="object"==typeof l.metadata&&null!==l.metadata?l.metadata:{},n="string"==typeof l.result?l.result:"string"==typeof l.decision?l.decision:void 0,o="string"==typeof l.reasonCode?l.reasonCode:"string"==typeof l.reason?l.reason:void 0,i="string"==typeof l.tokenHash?l.tokenHash:void 0,c="string"==typeof l.agentId?l.agentId:void 0,d=e.timestamp,u=new Date("string"==typeof d||"number"==typeof d?d:Date.now()).getTime();return{id:String(null!=(a=e.id)?a:"".concat(u,"-").concat(null!=(t=null!=i?i:c)?t:"unknown")),timestamp:u,tokenKey:null!=(r=null!=i?i:c)?r:"unknown",tokenHash:i,agentId:c,endpoint:"string"==typeof s.route?s.route:"string"==typeof l.action?l.action:void 0,credentialKey:"string"==typeof l.credentialId?l.credentialId:void 0,sourceVersion:"legacy-logs-v1",decision:eM(n,l.allowed,l.httpStatus),reasonCode:eW(o),rawDecision:n,rawReasonCode:o,confidence:eK({tokenHash:i,agentId:c})}}function eV(e){return"HIGH"===e?3:"MEDIUM"===e?2:1}let eG=[{value:"active",label:"ACTIVE"},{value:"revoked",label:"REVOKED"},{value:"expired",label:"EXPIRED"},{value:"all",label:"ALL"}],eY=[{value:"1h",label:"1 HOUR"},{value:"24h",label:"24 HOURS"},{value:"7d",label:"7 DAYS"}],eq=[{value:"all",label:"ALL"},{value:"ALLOW",label:"ALLOW"},{value:"DENY",label:"DENY"},{value:"RATE_LIMIT",label:"RATE_LIMIT"},{value:"ERROR",label:"ERROR"},{value:"UNKNOWN",label:"UNKNOWN"}];function eX(e){if(null==e)return null;if("number"==typeof e)return e<1e12?1e3*e:e;let t=Date.parse(e);return Number.isFinite(t)?t:null}function eJ(e){return e?e.length<=14?e:"".concat(e.slice(0,8),"...").concat(e.slice(-6)):"—"}function eQ(e){let t=eX(e);return null===t?"—":new Date(t).toLocaleString()}function eZ(){var e,t;let{subscribe:a}=(0,e_.h)(),[s,n]=(0,l.useState)([]),[o,i]=(0,l.useState)([]),[c,d]=(0,l.useState)("active"),[u,p]=(0,l.useState)("24h"),[f,m]=(0,l.useState)(""),[v,h]=(0,l.useState)("all"),[g,y]=(0,l.useState)("all"),[j,w]=(0,l.useState)(0),[k,N]=(0,l.useState)(!0),[S,A]=(0,l.useState)(null),[I,E]=(0,l.useState)(null),[T,L]=(0,l.useState)(null),[R,z]=(0,l.useState)(null),[O,P]=(0,l.useState)(null),F=(0,l.useRef)(null),D=(0,l.useRef)(null),_=(0,l.useCallback)(async()=>{N(!0),A(null);try{var e,t;let[a,r,l]=await Promise.all([x.FH.get(x.jI.Wallet,"/dashboard"),x.FH.get(x.jI.Wallet,"/security/credential-access/recent",{limit:500}),x.FH.get(x.jI.Wallet,"/logs",{category:"agent",limit:200})]),s=a.success?[...null!=(e=a.tokens.active)?e:[],...null!=(t=a.tokens.inactive)?t:[]]:[],o=r.success?r.rows.map(eB):[],c=l.success?l.logs.filter(e=>{var t;let a=null!=(t=e.data)?t:{};return"credential_access_decision"===a.action}).map(e$):[],d=Date.now(),u=(function(e){let t=new Map;for(let a of e){let e=a.id||function(e){var t,a;return"".concat(e.timestamp,"|").concat(null!=(t=e.endpoint)?t:"","|").concat(e.tokenKey,"|").concat(null!=(a=e.credentialKey)?a:"","|").concat(e.decision,"|").concat(e.reasonCode)}(a),r=t.get(e);if(!r||eV(a.confidence)>eV(r.confidence)){t.set(e,a);continue}"task40-audit-v1"===a.sourceVersion&&"legacy-logs-v1"===r.sourceVersion&&t.set(e,a)}return Array.from(t.values()).sort((e,t)=>t.timestamp-e.timestamp)})([...o,...c]).filter(e=>e.timestamp<=d);n(s),i(u.slice(0,500)),w(0)}catch(e){A(e instanceof Error?e.message:"Failed to load audit console")}finally{N(!1)}},[]);(0,l.useEffect)(()=>{_()},[_]);let U=(0,l.useCallback)(()=>{D.current||(D.current=setTimeout(()=>{D.current=null,_()},120))},[_]);(0,l.useEffect)(()=>{let e=[a(eU.Cw.TOKEN_CREATED,U),a(eU.Cw.TOKEN_REVOKED,U),a(eU.Cw.TOKEN_SPENT,U),a(eU.Cw.CREDENTIAL_CHANGED,U),a(eU.Cw.CREDENTIAL_ACCESSED,U)];return()=>{e.forEach(e=>e()),D.current&&(clearTimeout(D.current),D.current=null)}},[U,a]),(0,l.useEffect)(()=>{w(0)},[v,g,u,f]);let H=(0,l.useMemo)(()=>Date.now()-("1h"===u?36e5:"7d"===u?6048e5:864e5),[u]),M=f.trim().toLowerCase(),W=(0,l.useMemo)(()=>s.map((e,t)=>({key:e.tokenHash||e.agentId||"unknown-".concat(t),token:e,status:function(e){if(e.isRevoked)return"revoked";let t=eX(e.expiresAt);return e.isExpired||null!==t&&t<=Date.now()?"expired":e.isActive?"active":"inactive"}(e)})),[s]),K=(0,l.useMemo)(()=>new Map(W.map(e=>[e.key,e])),[W]),B="all"===v?null:null!=(t=K.get(v))?t:null,$=(0,l.useMemo)(()=>o.filter(e=>e.timestamp>=H),[o,H]),V=(0,l.useMemo)(()=>{let e=W.filter(e=>"active"===e.status).length,t=$.filter(e=>"DENY"===e.decision).length;return{activeCount:e,denied:t,rateLimited:$.filter(e=>"RATE_LIMIT"===e.decision).length,unknown:$.filter(e=>"UNKNOWN"===e.decision||"UNKNOWN"===e.reasonCode).length}},[W,$]),G=(0,l.useMemo)(()=>W.filter(e=>("all"===c||e.status===c)&&(!M||"".concat(e.key," ").concat(e.token.tokenHash," ").concat(e.token.agentId).toLowerCase().includes(M))),[W,c,M]),Y=(0,l.useMemo)(()=>{let e=[{value:"all",label:"ALL TOKENS"}],t=new Set(["all"]);if(G.forEach(a=>{var r,l;t.has(a.key)||(t.add(a.key),e.push({value:a.key,label:"".concat(null!=(r=a.token.agentId)?r:"unknown"," \xb7 ").concat(eJ(null!=(l=a.token.tokenHash)?l:a.key))}))}),"all"!==v&&!t.has(v)){var a,r;let t=K.get(v);t&&e.push({value:t.key,label:"".concat(null!=(a=t.token.agentId)?a:"unknown"," \xb7 ").concat(eJ(null!=(r=t.token.tokenHash)?r:t.key))})}return e},[G,v,K]),q=(0,l.useMemo)(()=>{let e=new Map;return $.forEach(t=>{[t.tokenHash,t.tokenKey,t.agentId?"agent:".concat(t.agentId):void 0,t.agentId].filter(e=>!!e).forEach(a=>{var r;e.set(a,Math.max(null!=(r=e.get(a))?r:0,t.timestamp))})}),e},[$]),X=(0,l.useCallback)(e=>{var t,a,r,l;let s=e.token.tokenHash;return s&&q.has(s)?null!=(t=q.get(s))?t:null:q.has(e.key)?null!=(a=q.get(e.key))?a:null:e.token.agentId&&q.has("agent:".concat(e.token.agentId))?null!=(r=q.get("agent:".concat(e.token.agentId)))?r:null:e.token.agentId&&q.has(e.token.agentId)&&null!=(l=q.get(e.token.agentId))?l:null},[q]),J=(0,l.useMemo)(()=>$.filter(e=>{if("all"!==v){let t=null==B?void 0:B.token.agentId,a=e.tokenKey===v||e.tokenHash===v,r=!!t&&e.agentId===t;if(!a&&!r)return!1}if("all"!==g&&e.decision!==g)return!1;if(M){var t,a;if(!"".concat(null!=(t=e.tokenHash)?t:""," ").concat(e.tokenKey," ").concat(null!=(a=e.agentId)?a:"").toLowerCase().includes(M))return!1}return!0}),[g,$,v,B,M]),Q=(0,l.useMemo)(()=>{let e=50*j;return J.slice(e,e+50)},[J,j]),Z=(0,l.useCallback)(e=>{h(e),w(0),F.current&&"function"==typeof F.current.scrollIntoView&&F.current.scrollIntoView({behavior:"smooth",block:"start"})},[]),ee=(0,l.useCallback)(async(e,t)=>{if(!t||!navigator.clipboard)return void E("Clipboard unavailable for this key.");try{let a=eJ(t);await navigator.clipboard.writeText(a),z(e),E("Copied ".concat(a)),setTimeout(()=>z(t=>t===e?null:t),1500)}catch(e){E("Clipboard write failed.")}},[]),et=(0,l.useCallback)((e,t)=>{if(!t)return void E("Token hash unavailable; cannot revoke.");P({tokenKey:e,tokenHash:t})},[]),ea=(0,l.useCallback)(async()=>{if(!O)return;let{tokenKey:e,tokenHash:t}=O;P(null),L(e),E(null);try{let e=await x.FH.post(x.jI.Wallet,"/actions/tokens/revoke",{tokenHash:t});if(!e.success)return void E(e.error||"Failed to revoke token.");E("Revoked ".concat(eJ(t))),await _()}catch(e){E(e instanceof Error?e.message:"Failed to revoke token.")}finally{L(null)}},[O,_]);return k?(0,r.jsx)("div",{className:"p-4 font-mono text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"LOADING_AUDIT_CONSOLE…"}):S?(0,r.jsx)("div",{className:"p-4 border border-[var(--color-warning,#ff4d00)] bg-[color-mix(in_srgb,var(--color-warning,#ff4d00)_10%,transparent)]",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 font-mono text-[10px] text-[var(--color-warning,#ff4d00)]",children:[(0,r.jsx)(eD.A,{size:12})," ",S]})}):(0,r.jsxs)("div",{className:"h-full flex flex-col p-3 gap-3 overflow-hidden",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between border border-[var(--color-border,#d4d4d8)] p-2 bg-[var(--color-surface,#fff)]",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"font-mono text-[11px] font-bold",children:"AUDIT"}),(0,r.jsxs)("div",{className:"font-mono text-[9px] text-[var(--color-text-muted,#6b7280)]",children:[null==(e=eY.find(e=>e.value===u))?void 0:e.label.toLowerCase()," \xb7 ",Math.min(o.length,500)," rows",o.length>=500?" (capped)":""]})]}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>void _(),icon:(0,r.jsx)(C.A,{size:10}),children:"REFRESH"})]}),(0,r.jsxs)("div",{className:"grid grid-cols-2 xl:grid-cols-4 gap-2",children:[(0,r.jsxs)("div",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-2",children:[(0,r.jsx)("div",{className:"font-mono text-[8px] text-[var(--color-text-muted,#6b7280)]",children:"ACTIVE KEYS"}),(0,r.jsx)("div",{className:"font-mono text-[12px] font-bold",children:V.activeCount})]}),(0,r.jsxs)("div",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-2",children:[(0,r.jsxs)("div",{className:"font-mono text-[8px] text-[var(--color-text-muted,#6b7280)]",children:["DENIES (",u,")"]}),(0,r.jsx)("div",{className:"font-mono text-[12px] font-bold",children:V.denied})]}),(0,r.jsxs)("div",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-2",children:[(0,r.jsxs)("div",{className:"font-mono text-[8px] text-[var(--color-text-muted,#6b7280)]",children:["RATE LIMITED (",u,")"]}),(0,r.jsx)("div",{className:"font-mono text-[12px] font-bold",children:V.rateLimited})]}),(0,r.jsxs)("div",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-2",children:[(0,r.jsxs)("div",{className:"font-mono text-[8px] text-[var(--color-text-muted,#6b7280)]",children:["UNKNOWN MAPS (",u,")"]}),(0,r.jsx)("div",{className:"font-mono text-[12px] font-bold",children:V.unknown})]})]}),(0,r.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-5 gap-2",children:[(0,r.jsx)(b.UM,{label:"Status",options:eG,value:c,onChange:e=>d(e),compact:!0}),(0,r.jsx)(b.UM,{label:"Window",options:eY,value:u,onChange:e=>p(e),compact:!0}),(0,r.jsx)(b.UM,{label:"Token",options:Y,value:v,onChange:h,compact:!0}),(0,r.jsx)(b.UM,{label:"Decision",options:eq,value:g,onChange:e=>y(e),compact:!0}),(0,r.jsxs)("label",{className:"font-mono text-[9px] flex flex-col gap-1",children:["SEARCH KEY / AGENT",(0,r.jsx)("input",{value:f,onChange:e=>m(e.target.value),placeholder:"hash or agent id",className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] px-2 py-1.5 text-[10px]"})]})]}),I&&(0,r.jsx)("div",{className:"font-mono text-[9px] border border-[var(--color-info,#0047ff)] p-2 text-[var(--color-info,#0047ff)] bg-[color-mix(in_srgb,var(--color-info,#0047ff)_8%,transparent)]",children:I}),(0,r.jsxs)("div",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] overflow-hidden",children:[(0,r.jsxs)("div",{className:"px-2 py-1.5 border-b border-[var(--color-border,#d4d4d8)] font-mono text-[9px]",children:["KEY INVENTORY \xb7 ",G.length," ROWS"]}),(0,r.jsx)("div",{className:"max-h-[220px] overflow-auto",children:0===G.length?(0,r.jsx)("div",{className:"p-4 font-mono text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"NO TOKENS MATCH FILTERS"}):(0,r.jsxs)("table",{className:"w-full text-left",children:[(0,r.jsx)("thead",{className:"sticky top-0 bg-[var(--color-surface-alt,#fafafa)] border-b",children:(0,r.jsxs)("tr",{className:"font-mono text-[9px]",children:[(0,r.jsx)("th",{className:"p-2",children:"KEY"}),(0,r.jsx)("th",{className:"p-2",children:"AGENT"}),(0,r.jsx)("th",{className:"p-2",children:"PERMISSIONS"}),(0,r.jsx)("th",{className:"p-2",children:"ISSUED"}),(0,r.jsx)("th",{className:"p-2",children:"EXPIRES"}),(0,r.jsx)("th",{className:"p-2",children:"LAST USED"}),(0,r.jsx)("th",{className:"p-2",children:"ACTIONS"})]})}),(0,r.jsx)("tbody",{children:G.map(e=>{var t,a,l,s,n;let o=X(e),i=T===e.key,c="active"===e.status&&!!e.token.tokenHash;return(0,r.jsxs)("tr",{className:"border-b font-mono text-[9px]",children:[(0,r.jsxs)("td",{className:"p-2",children:[(0,r.jsx)("div",{children:eJ(null!=(t=e.token.tokenHash)?t:e.key)}),(0,r.jsx)("div",{className:"text-[8px] uppercase ".concat("active"===(s=e.status)?"text-[var(--color-success,#16a34a)]":"revoked"===s?"text-[var(--color-warning,#ff4d00)]":"expired"===s?"text-[var(--color-text-faint,#9ca3af)]":"text-[var(--color-text-muted,#6b7280)]"),children:e.status})]}),(0,r.jsx)("td",{className:"p-2",children:null!=(a=e.token.agentId)?a:"unknown"}),(0,r.jsx)("td",{className:"p-2",children:(n=null!=(l=e.token.permissions)?l:[])&&0!==n.length?n.length<=2?n.join(", "):"".concat(n.slice(0,2).join(", ")," +").concat(n.length-2):"—"}),(0,r.jsx)("td",{className:"p-2",children:eQ(e.token.createdAt)}),(0,r.jsxs)("td",{className:"p-2",children:[eQ(e.token.expiresAt),(0,r.jsx)("div",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:function(e){let t=eX(e);if(null===t)return"—";let a=t-Date.now();if(a<=0)return"expired";let r=Math.floor(a/6e4);if(r<60)return"".concat(r,"m");let l=Math.floor(r/60);return l<24?"".concat(l,"h"):"".concat(Math.floor(l/24),"d")}(e.token.expiresAt)})]}),(0,r.jsx)("td",{className:"p-2",children:o?new Date(o).toLocaleString():"—"}),(0,r.jsx)("td",{className:"p-2",children:(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("button",{onClick:()=>void ee(e.key,e.token.tokenHash),className:"border px-1.5 py-0.5 text-[8px] disabled:opacity-40",title:"Copy short hash",disabled:!e.token.tokenHash,children:(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(ei.A,{size:8}),R===e.key?"COPIED":"COPY"]})}),(0,r.jsx)("button",{onClick:()=>Z(e.key),className:"border px-1.5 py-0.5 text-[8px]",title:"Open activity",children:"VIEW"}),(0,r.jsx)("button",{onClick:()=>et(e.key,e.token.tokenHash),disabled:!c||i,className:"border px-1.5 py-0.5 text-[8px] disabled:opacity-40 text-[var(--color-warning,#ff4d00)]",title:c?"Revoke token":"Token cannot be revoked",children:i?"REVOKING":"REVOKE"})]})})]},e.key)})})]})})]}),(0,r.jsxs)("div",{ref:F,className:"flex-1 overflow-auto border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)]",children:[(0,r.jsxs)("div",{className:"sticky top-0 z-10 px-2 py-1.5 border-b bg-[var(--color-surface-alt,#fafafa)] font-mono text-[9px] flex items-center justify-between",children:[(0,r.jsxs)("span",{children:["TOKEN ACTIVITY \xb7 ",J.length," ROWS"]}),(0,r.jsxs)("span",{className:"text-[var(--color-text-muted,#6b7280)]",children:["PAGE ",j+1," / ",Math.max(1,Math.ceil(J.length/50))]})]}),o.length>=500&&(0,r.jsx)("div",{className:"font-mono text-[9px] border-b border-[var(--color-warning,#ff4d00)] p-2 text-[var(--color-warning,#ff4d00)]",children:"RESULTS TRUNCATED AT 500 ROWS — NARROW FILTERS TO REDUCE VOLUME."}),0===Q.length?(0,r.jsx)("div",{className:"p-4 font-mono text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"NO AUDIT EVENTS IN WINDOW"}):(0,r.jsxs)("table",{className:"w-full text-left",children:[(0,r.jsx)("thead",{className:"sticky top-[31px] bg-[var(--color-surface-alt,#fafafa)] border-b",children:(0,r.jsxs)("tr",{className:"font-mono text-[9px]",children:[(0,r.jsx)("th",{className:"p-2",children:"TIME"}),(0,r.jsx)("th",{className:"p-2",children:"TOKEN / AGENT"}),(0,r.jsx)("th",{className:"p-2",children:"DECISION"}),(0,r.jsx)("th",{className:"p-2",children:"REASON"}),(0,r.jsx)("th",{className:"p-2",children:"CONFIDENCE"}),(0,r.jsx)("th",{className:"p-2",children:"ENDPOINT"})]})}),(0,r.jsx)("tbody",{children:Q.map(e=>{var t,a;return(0,r.jsxs)("tr",{className:"border-b font-mono text-[9px]",children:[(0,r.jsx)("td",{className:"p-2",children:new Date(e.timestamp).toLocaleString()}),(0,r.jsxs)("td",{className:"p-2",children:[null!=(t=e.agentId)?t:"unknown"," \xb7 ",e.tokenKey.slice(0,10)]}),(0,r.jsx)("td",{className:"p-2",children:e.decision}),(0,r.jsxs)("td",{className:"p-2",children:[e.reasonCode,e.rawReasonCode&&"UNKNOWN"===e.reasonCode?" (".concat(e.rawReasonCode,")"):""]}),(0,r.jsx)("td",{className:"p-2",title:"HIGH"===e.confidence?"Direct token hash match":"MEDIUM"===e.confidence?"Agent correlation":"Partial/ambiguous join",children:e.confidence}),(0,r.jsx)("td",{className:"p-2",children:null!=(a=e.endpoint)?a:"—"})]},e.id)})})]})]}),(0,r.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[(0,r.jsx)("button",{onClick:()=>w(e=>Math.max(0,e-1)),disabled:0===j,className:"font-mono text-[9px] border px-2 py-1 disabled:opacity-40",children:"PREV"}),(0,r.jsx)("button",{onClick:()=>w(e=>(e+1)*50<J.length?e+1:e),disabled:(j+1)*50>=J.length,className:"font-mono text-[9px] border px-2 py-1 disabled:opacity-40",children:"NEXT"})]}),(0,r.jsx)(b.Rw,{isOpen:null!==O,onClose:()=>P(null),onConfirm:()=>void ea(),title:"Revoke Token",message:O?"Revoke token ".concat(eJ(O.tokenHash),"? The agent will lose access immediately."):"",confirmText:"REVOKE",variant:"danger"})]})}var e0=a(77801);let e1=[{id:"strict",label:"Strict",description:"Agent agent only, read-only, strong field redaction. 15 min TTL."},{id:"dev",label:"Dev (recommended)",description:"All agents, read/write, moderate redaction. 1 hour TTL."},{id:"admin",label:"Admin (dangerous)",description:"Full access, no redaction. Use with caution."}],e4=[{value:"wallet:list",label:"wallet:list"},{value:"wallet:create:hot",label:"wallet:create:hot"},{value:"wallet:create:temp",label:"wallet:create:temp"},{value:"wallet:rename",label:"wallet:rename"},{value:"wallet:export",label:"wallet:export"},{value:"wallet:tx:add",label:"wallet:tx:add"},{value:"wallet:asset:add",label:"wallet:asset:add"},{value:"wallet:asset:remove",label:"wallet:asset:remove"},{value:"send:hot",label:"send:hot"},{value:"send:temp",label:"send:temp"},{value:"swap",label:"swap"},{value:"fund",label:"fund"},{value:"launch",label:"launch"},{value:"apikey:get",label:"apikey:get"},{value:"apikey:set",label:"apikey:set"},{value:"workspace:modify",label:"workspace:modify"},{value:"strategy:read",label:"strategy:read"},{value:"strategy:manage",label:"strategy:manage"},{value:"app:storage",label:"app:storage"},{value:"app:storage:all",label:"app:storage:all"},{value:"app:accesskey",label:"app:accesskey"},{value:"action:create",label:"action:create"},{value:"action:read",label:"action:read"},{value:"action:resolve",label:"action:resolve"},{value:"adapter:manage",label:"adapter:manage"},{value:"addressbook:write",label:"addressbook:write"},{value:"bookmark:write",label:"bookmark:write"},{value:"secret:read",label:"secret:read"},{value:"secret:write",label:"secret:write"},{value:"totp:read",label:"totp:read"},{value:"trade:all",label:"trade:all"},{value:"wallet:write",label:"wallet:write"},{value:"extension:*",label:"extension:*"},{value:"admin:*",label:"admin:* (dangerous)"}],e2={strict:"Read-only, agent agent only. Hidden: password, cvv, privateKey, seedPhrase, refresh_token. 15 min TTL, 50 reads max.",dev:"Read/write, all agents. Hidden: cvv, seedPhrase, privateKey, refresh_token. 1 hour TTL, 500 reads max.",admin:"Full access, no field redaction. 1 hour TTL, unlimited reads."},e8=[{value:"profile",label:"Profile"},{value:"permissions",label:"Permissions"}],e6="aura:api-keys:profiles:v1",e3={strict:{ttlSeconds:900,maxReads:50,scope:["secret:read"],excludeFields:["password","cvv","privateKey","seedPhrase","refresh_token"]},dev:{ttlSeconds:3600,maxReads:500,scope:["wallet:list","secret:read","secret:write","action:create","action:read","action:resolve"],excludeFields:["cvv","seedPhrase","privateKey","refresh_token"]},admin:{ttlSeconds:3600,scope:["admin:*"],excludeFields:[]}};function e5(e){return e.length<=14?e:"".concat(e.slice(0,8),"...").concat(e.slice(-4))}function e9(){let e=Math.random().toString(36).slice(2,8);return"agent:local:".concat(e)}function e7(e){return Array.from(new Set(e.map(e=>e.trim().normalize("NFKC").toLowerCase()).filter(Boolean)))}let te=e=>{var t,a,s,n,o;let{requests:i,activeTokens:c,inactiveTokens:d,actionLoading:u,onResolveAction:f,onRevokeToken:m,agents:v=[]}=e,[h,g]=(0,l.useState)([]),[y,j]=(0,l.useState)(null),[w,k]=(0,l.useState)(""),[N,S]=(0,l.useState)("dev"),[A,E]=(0,l.useState)(""),[L,R]=(0,l.useState)(""),[z,O]=(0,l.useState)([]),[P,F]=(0,l.useState)("secret:read"),[D,_]=(0,l.useState)(""),[U,H]=(0,l.useState)([]),[M,W]=(0,l.useState)(null),[K,B]=(0,l.useState)(null),[$,V]=(0,l.useState)(()=>e9()),[G,q]=(0,l.useState)("profile"),[X,J]=(0,l.useState)("builtin:dev"),[Q,Z]=(0,l.useState)("secret:read"),[ee,et]=(0,l.useState)(["secret:read","secret:write"]),[ea,er]=(0,l.useState)([]),[el,es]=(0,l.useState)(!1),[en,eo]=(0,l.useState)(null),[ec,ed]=(0,l.useState)(null),[eu,ex]=(0,l.useState)(null),[ef,em]=(0,l.useState)(!1),[ev,eh]=(0,l.useState)(!1),[eg,eb]=(0,l.useState)(null),[ej,ew]=(0,l.useState)(null),[ek,eN]=(0,l.useState)(null);(0,l.useEffect)(()=>{try{let e=localStorage.getItem(e6);if(!e)return;let t=JSON.parse(e);if(!Array.isArray(t))return;let a=t.filter(e=>e&&"string"==typeof e.id&&"string"==typeof e.name&&"string"==typeof e.profile&&"v1"===e.profileVersion&&"number"==typeof e.updatedAt).map(e=>{var t,a,r;let l=e7([...(null==(t=e.overrides)?void 0:t.scope)||[],...(null==(a=e.overrides)?void 0:a.readScopes)||[],...(null==(r=e.overrides)?void 0:r.writeScopes)||[]]),s=e.overrides?{...e.overrides,...l.length>0?{scope:l}:{},readScopes:void 0,writeScopes:void 0}:null;return{...e,overrides:s}});g(a)}catch(e){g([])}},[]),(0,l.useEffect)(()=>{localStorage.setItem(e6,JSON.stringify(h))},[h]);let eS=(0,l.useCallback)(()=>{j(null),k(""),S("dev"),E(""),R(""),O([]),F("secret:read"),_(""),H([]),W(null),B(null)},[]),eC=(0,l.useCallback)(e=>{let t=e3[e];t&&(E(String(t.ttlSeconds)),R("number"==typeof t.maxReads?String(t.maxReads):""),O(t.scope),F(t.scope[0]||"secret:read"),_(t.excludeFields.join(", ")))},[]),eA=(0,l.useMemo)(()=>{let e=[{value:"agent:*",label:"All Agents (agent:*)"}];for(let t of v){let a=t.name||t.id;e.push({value:"agent:".concat(t.id),label:"agent:".concat(a)})}return e},[v]),eI=(0,l.useMemo)(()=>i.filter(e=>"pending"===e.status&&("auth"===e.type||"permission_update"===e.type)),[i]),eE=(0,l.useMemo)(()=>[...e1.map(e=>({value:"builtin:".concat(e.id),label:"".concat(e.label," — ").concat(e.description)})),...h.map(e=>({value:"draft:".concat(e.id),label:"Custom \xb7 ".concat(e.name)}))],[h]);(0,l.useEffect)(()=>{eE.some(e=>e.value===X)||J("builtin:dev")},[X,eE]);let eT=(0,l.useCallback)(()=>{if(X.startsWith("draft:")){let r=X.slice(6),l=h.find(e=>e.id===r);if(l){var e,t,a;let r=e7([...(null==(e=l.overrides)?void 0:e.scope)||[],...(null==(t=l.overrides)?void 0:t.readScopes)||[],...(null==(a=l.overrides)?void 0:a.writeScopes)||[]]),s=l.overrides?{...l.overrides,...r.length>0?{scope:r}:{}}:void 0;return{profile:l.profile,profileVersion:l.profileVersion,...s?{profileOverrides:s}:{}}}}return{profile:X.startsWith("builtin:")?X.slice(8):"dev",profileVersion:"v1"}},[X,h]),eL=(0,l.useCallback)(e=>{let t=e7([e])[0];t&&et(e=>e.includes(t)?e:[...e,t])},[]),eR=(0,l.useCallback)(e=>{et(t=>t.filter(t=>t!==e))},[]),ez=(0,l.useCallback)(()=>{W(null),B(null);let e=w.trim();if(!e)return void W("Profile name is required.");let{overrides:t,error:a}=function(e){let t={};if(e.ttlSeconds.trim().length>0){let a=Number(e.ttlSeconds.trim());if(!Number.isFinite(a)||a<=0)return{overrides:null,error:"TTL override must be a positive number."};t.ttlSeconds=a}if(e.maxReads.trim().length>0){let a=Number(e.maxReads.trim());if(!Number.isFinite(a)||a<=0)return{overrides:null,error:"Max reads override must be a positive number."};t.maxReads=a}let a=e7(e.scope),r=function(e){let t=e.split(",").map(e=>e.trim()).filter(Boolean);return t.length>0?t:void 0}(e.excludeFields);return a.length>0&&(t.scope=a),r&&(t.excludeFields=r),{overrides:Object.keys(t).length>0?t:null,error:null}}({ttlSeconds:A,maxReads:L,scope:z,excludeFields:D});if(a)return void W(a);let r=U.length>0?{...t||{},readScopes:U,writeScopes:U}:t;if(h.some(t=>t.name.toLowerCase()===e.toLowerCase()&&t.id!==y))return void W("A profile with this name already exists.");let l={id:y||"".concat(Date.now().toString(36),"-").concat(Math.random().toString(36).slice(2,7)),name:e,profile:N,profileVersion:"v1",overrides:r,updatedAt:Date.now()};g(e=>y?e.map(e=>e.id===y?l:e):[l,...e]),B(y?"Profile updated.":"Profile created."),y||J("draft:".concat(l.id)),j(l.id)},[y,N,D,L,w,z,A,U,h]),eO=(0,l.useCallback)(e=>{var t,a,r,l,s,n,o,i;j(e.id),k(e.name),S(e.profile),E((null==(t=e.overrides)?void 0:t.ttlSeconds)?String(e.overrides.ttlSeconds):""),R((null==(a=e.overrides)?void 0:a.maxReads)?String(e.overrides.maxReads):"");let c=e7([...(null==(r=e.overrides)?void 0:r.scope)||[],...(null==(l=e.overrides)?void 0:l.readScopes)||[],...(null==(s=e.overrides)?void 0:s.writeScopes)||[]]);O(c),F(c[0]||"secret:read"),_(((null==(n=e.overrides)?void 0:n.excludeFields)||[]).join(", ")),H((null==(o=e.overrides)?void 0:o.readScopes)||(null==(i=e.overrides)?void 0:i.agentReadScopes)||[]),W(null),B(null)},[]),eP=(0,l.useCallback)(e=>{let t=e7([e])[0];t&&O(e=>e.includes(t)?e:[...e,t])},[]),eF=(0,l.useCallback)(e=>{O(t=>t.filter(t=>t!==e))},[]),e_=(0,l.useCallback)(e=>{g(t=>t.filter(t=>t.id!==e)),y===e&&eS(),X==="draft:".concat(e)&&J("builtin:dev")},[y,X,eS]),eU=(0,l.useCallback)(async()=>{if(eb(null),ew(null),"permissions"===G)return void eb("Policy preview is currently available for profile-based issuance only.");eh(!0);try{let e=eT(),t=await x.FH.post(x.jI.Wallet,"/actions/token/preview",e);ew(function(e){let t=e&&"object"==typeof e?e:{},a=t.effectivePolicy&&"object"==typeof t.effectivePolicy?t.effectivePolicy:{},r=a.credentialAccess&&"object"==typeof a.credentialAccess?a.credentialAccess:{},l=a.rateBudget&&"object"==typeof a.rateBudget?a.rateBudget:{};return{version:"v1",profile:t.profile&&"object"==typeof t.profile?t.profile:void 0,effectivePolicy:{permissions:Array.isArray(a.permissions)?a.permissions.filter(e=>"string"==typeof e):[],credentialAccess:{read:Array.isArray(r.read)?r.read.filter(e=>"string"==typeof e):[],write:Array.isArray(r.write)?r.write.filter(e=>"string"==typeof e):[],excludeFields:Array.isArray(r.excludeFields)?r.excludeFields.filter(e=>"string"==typeof e):[],maxReads:"number"==typeof r.maxReads?r.maxReads:null},ttlSeconds:"number"==typeof a.ttlSeconds?a.ttlSeconds:0,maxReads:"number"==typeof a.maxReads?a.maxReads:null,rateBudget:{state:"inherited"===l.state||"explicit"===l.state?l.state:"none",requests:"number"==typeof l.requests?l.requests:null,windowSeconds:"number"==typeof l.windowSeconds?l.windowSeconds:null,source:"profile"===l.source||"override"===l.source?l.source:"none"}},warnings:Array.isArray(t.warnings)?t.warnings.filter(e=>"string"==typeof e):[],overrideDelta:Array.isArray(t.overrideDelta)?t.overrideDelta.filter(e=>"string"==typeof e):[],denyExamples:Array.isArray(t.denyExamples)?t.denyExamples.filter(e=>!!e&&"object"==typeof e).map(e=>({code:String(e.code||"UNKNOWN"),message:String(e.message||"")})):[],effectivePolicyHash:"string"==typeof t.effectivePolicyHash?t.effectivePolicyHash:"n/a"}}(t))}catch(e){eb(e instanceof Error?e.message:"Failed to preview profile policy.")}finally{eh(!1)}},[G,eT]),eH=(0,l.useCallback)(async()=>{if(eo(null),ed(null),ex(null),!$.trim())return void eo("Agent ID is required.");if("permissions"===G&&0===ee.length)return void eo("Select at least one permission for manual issuance.");let e=(0,p.ji)();if(!e)return void eo("Agent keypair is unavailable. Re-unlock and retry.");es(!0);try{var t,a;let r;if("permissions"===G){let t=ea.length>0?{read:ea,write:ea}:void 0;r=await x.FH.post(x.jI.Wallet,"/actions/token",{agentId:$.trim(),pubkey:e,permissions:ee,...t?{credentialAccess:t}:{}})}else{let t=eT();ea.length>0&&(t.profileOverrides={...t.profileOverrides||{},readScopes:ea,writeScopes:ea}),r=await x.FH.post(x.jI.Wallet,"/actions/token",{agentId:$.trim(),pubkey:e,...t})}if(!r.success||!r.encryptedToken)throw Error("Token issuance failed.");let l=await (0,p.DC)(r.encryptedToken);if(ed(l),"permissions"===G)ex("".concat($.trim()," \xb7 permissions:").concat(ee.join(",")).concat((null==(t=r.warnings)?void 0:t.length)?" \xb7 warnings present":""));else{let e=eT();ex("".concat($.trim()," \xb7 ").concat(e.profile,"@").concat(e.profileVersion).concat((null==(a=r.warnings)?void 0:a.length)?" \xb7 warnings present":""))}}catch(e){eo(e instanceof Error?e.message:"Token issuance failed.")}finally{es(!1)}},[$,G,ee,ea,eT]),eM=(0,l.useCallback)(async()=>{ec&&navigator.clipboard&&(await navigator.clipboard.writeText(ec),em(!0),setTimeout(()=>em(!1),1500))},[ec]),eW=(0,l.useCallback)(async(e,t)=>{let a=await f(e,t);if(a.success)return void eN(t?"Approved request ".concat(e.slice(0,8),"."):"Rejected request ".concat(e.slice(0,8),"."));eN(a.message||"Failed to resolve request.")},[f]),eK=(0,l.useMemo)(()=>c.filter(e=>!e.isAdmin),[c]);return(0,r.jsxs)("div",{className:"h-full overflow-y-auto px-5 py-4 font-mono",children:[(0,r.jsxs)("div",{className:"mb-4 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-3",children:[(0,r.jsx)("div",{className:"text-[10px] font-bold tracking-widest text-[var(--color-text,#0a0a0a)]",children:"API KEYS"}),(0,r.jsx)("div",{className:"mt-1 text-[9px] text-[var(--color-text-muted,#6b7280)] leading-relaxed",children:"Auth management surface for profile templates + permissions-based issuance + pending auth approvals."})]}),(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-4 xl:grid-cols-2",children:[(0,r.jsxs)("section",{className:"order-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-3",children:[(0,r.jsx)("div",{className:"mb-2 text-[10px] font-bold tracking-widest text-[var(--color-text,#0a0a0a)]",children:"ISSUE API KEY"}),(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-2 md:grid-cols-2",children:[(0,r.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-end gap-1.5",children:[(0,r.jsx)(b.ks,{label:"Agent ID",value:$,onChange:e=>V(e.target.value),placeholder:"agent:local:dev",compact:!0}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>V(e9()),icon:(0,r.jsx)(C.A,{size:10}),title:"Regenerate Agent ID",className:"mb-[1px]",children:"NEW ID"})]}),(0,r.jsx)(b.UM,{label:"Issuance Mode",options:e8,value:G,onChange:e=>q(e),compact:!0})]}),"profile"===G?(0,r.jsxs)("div",{className:"mt-2",children:[(0,r.jsx)(b.UM,{label:"Profile Source",options:eE,value:X,onChange:J,compact:!0}),(()=>{let e=X.startsWith("builtin:")?X.slice(8):null,t=e?e2[e]:null;return t?(0,r.jsx)("div",{className:"mt-1 px-1 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:t}):(0,r.jsx)("div",{className:"mt-1 px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"Profile mode resolves permissions/scopes/ttl from the selected profile."})})()]}):(0,r.jsxs)("div",{className:"mt-2 space-y-1",children:[(0,r.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-end gap-1.5",children:[(0,r.jsx)(b.UM,{label:"Permissions",options:e4.map(e=>({value:e.value,label:e.label})),value:Q,onChange:Z,compact:!0}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>eL(Q),children:"ADD"})]}),0===ee.length?(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-danger,#ef4444)]",children:"No permissions selected."}):(0,r.jsx)("div",{className:"flex flex-wrap gap-1",children:ee.map(e=>(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-1.5 py-0.5 text-[8px] text-[var(--color-text,#0a0a0a)]",children:[e,(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>eR(e),className:"h-4 px-1 text-[8px]",children:"X"})]},"perm-".concat(e)))}),(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"Permissions mode issues exactly the selected permissions."})]}),eA.length>1&&(0,r.jsxs)("div",{className:"mt-2 space-y-1",children:[(0,r.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-end gap-1.5",children:[(0,r.jsx)(b.UM,{label:"Agent Scope",options:eA,value:(null==(t=eA[0])?void 0:t.value)||"agent:*",onChange:e=>{ea.includes(e)||er(t=>[...t,e])},compact:!0}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>er([]),children:"CLEAR"})]}),0===ea.length?(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"No agent restriction — uses profile/system defaults."}):(0,r.jsx)("div",{className:"flex flex-wrap gap-1",children:ea.map(e=>(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-1.5 py-0.5 text-[8px] text-[var(--color-text,#0a0a0a)]",children:[e,(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>er(t=>t.filter(t=>t!==e)),className:"h-4 px-1 text-[8px]",children:"X"})]},"vs-".concat(e)))})]}),(0,r.jsx)("div",{className:"mt-2 rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-2 py-2 text-[9px] text-[var(--color-text-muted,#6b7280)]",children:"Generate a key in one click. Preview is optional and only shows what permissions/scopes will be issued."}),en&&(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-danger,#ef4444)]",children:en}),(0,r.jsxs)("div",{className:"mt-3 flex flex-wrap gap-2",children:[(0,r.jsx)(b.$n,{size:"sm",onClick:()=>{eH()},loading:el,icon:el?void 0:(0,r.jsx)(Y.A,{size:11}),children:"ISSUE API KEY"}),(0,r.jsx)(b.$n,{size:"sm",variant:"secondary",onClick:()=>{eU()},loading:ev,disabled:"permissions"===G,icon:ev?void 0:(0,r.jsx)(C.A,{size:11}),children:"PREVIEW POLICY"})]}),eg&&(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-danger,#ef4444)]",children:eg}),ej&&(0,r.jsxs)("div",{className:"mt-3 rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] p-2",children:[(0,r.jsxs)("div",{className:"text-[8px] tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:["HASH ",e5(ej.effectivePolicyHash)]}),ej.profile&&(0,r.jsxs)("div",{className:"mt-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:["profile: ",ej.profile.id,"@",ej.profile.version]}),(0,r.jsxs)("div",{className:"mt-1 text-[9px] text-[var(--color-text-muted,#6b7280)]",children:["permissions: ",ej.effectivePolicy.permissions.length," \xb7 ttl: ",ej.effectivePolicy.ttlSeconds,"s \xb7 max reads: ",null!=(s=ej.effectivePolicy.maxReads)?s:"unlimited"]}),(0,r.jsxs)("div",{className:"mt-2 grid grid-cols-1 gap-1 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsxs)("div",{children:["perms: ",ej.effectivePolicy.permissions.join(", ")||"(none)"]}),(0,r.jsxs)("div",{children:["read scope: ",ej.effectivePolicy.credentialAccess.read.join(", ")||"(none)"]}),(0,r.jsxs)("div",{children:["write scope: ",ej.effectivePolicy.credentialAccess.write.join(", ")||"(none)"]}),(0,r.jsxs)("div",{children:["excluded fields: ",ej.effectivePolicy.credentialAccess.excludeFields.join(", ")||"(none)"]}),(0,r.jsxs)("div",{children:["rate budget: ",ej.effectivePolicy.rateBudget.state," (",null!=(n=ej.effectivePolicy.rateBudget.requests)?n:"n/a"," / ",null!=(o=ej.effectivePolicy.rateBudget.windowSeconds)?o:"n/a","s, source=",ej.effectivePolicy.rateBudget.source,")"]})]}),ej.overrideDelta.length>0&&(0,r.jsxs)("div",{className:"mt-2 rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-1.5 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsx)("div",{className:"mb-1 tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:"OVERRIDE DELTA"}),ej.overrideDelta.join(" \xb7 ")]}),ej.denyExamples&&ej.denyExamples.length>0&&(0,r.jsxs)("div",{className:"mt-2 rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-1.5 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsx)("div",{className:"mb-1 tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:"EXPECTED DENY EXAMPLES"}),(0,r.jsx)("ul",{className:"space-y-0.5",children:ej.denyExamples.map(e=>(0,r.jsxs)("li",{children:["• ",e.code,": ",e.message]},"".concat(e.code,"-").concat(e.message.slice(0,12))))})]}),ej.warnings.length>0&&(0,r.jsxs)("div",{className:"mt-2 flex items-start gap-1.5 text-[8px] text-[var(--color-warning,#ff4d00)]",children:[(0,r.jsx)(e0.A,{size:10,className:"mt-[1px]"}),(0,r.jsx)("span",{children:ej.warnings.join(" | ")})]})]}),ec&&(0,r.jsxs)("div",{className:"mt-3 rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-2",children:[(0,r.jsxs)("div",{className:"mb-1 flex items-center justify-between",children:[(0,r.jsx)("div",{className:"text-[8px] tracking-widest text-[var(--color-success,#16a34a)]",children:"API KEY ISSUED"}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>{eM()},icon:(0,r.jsx)(ei.A,{size:10}),children:ef?"COPIED":"COPY"})]}),eu&&(0,r.jsx)("div",{className:"mb-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:eu}),(0,r.jsx)("code",{className:"block max-h-20 overflow-y-auto break-all bg-[var(--color-background,#f4f4f5)] px-2 py-1 text-[9px] text-[var(--color-text,#0a0a0a)]",children:ec})]})]}),(0,r.jsxs)("section",{className:"order-2 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-3",children:[(0,r.jsxs)("div",{className:"mb-2 flex items-center justify-between",children:[(0,r.jsx)("div",{className:"text-[10px] font-bold tracking-widest text-[var(--color-text,#0a0a0a)]",children:"PROFILE BUILDER"}),y&&(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:eS,children:"NEW"})]}),(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-2",children:[(0,r.jsx)(b.ks,{label:"Profile Name",value:w,onChange:e=>k(e.target.value),placeholder:"e.g. CI deploy scoped",compact:!0}),(0,r.jsx)(b.UM,{label:"Load from template",options:e1.map(e=>({value:e.id,label:"".concat(e.label," — ").concat(e.description)})),value:N,onChange:e=>{S(e),eC(e)},compact:!0}),N&&e2[N]&&(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:e2[N]}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,r.jsx)(b.ks,{label:"TTL Override",value:A,onChange:e=>E(e.target.value),placeholder:"seconds",compact:!0}),(0,r.jsx)(b.ks,{label:"Max Reads",value:L,onChange:e=>R(e.target.value),placeholder:"count",compact:!0})]}),(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-end gap-1.5",children:[(0,r.jsx)(b.UM,{label:"Scope",options:e4.map(e=>({value:e.value,label:e.label})),value:P,onChange:F,compact:!0}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>eP(P),children:"ADD"})]}),0===z.length?(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"Using base profile scope defaults."}):(0,r.jsx)("div",{className:"flex flex-wrap gap-1",children:z.map(e=>(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-1.5 py-0.5 text-[8px] text-[var(--color-text,#0a0a0a)]",children:[e,(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>eF(e),className:"h-4 px-1 text-[8px]",children:"X"})]},"scope-".concat(e)))})]}),(0,r.jsxs)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:["Scope uses the same permission vocabulary as Issue API Key (for example: ",(0,r.jsx)("code",{children:"secret:read"}),", ",(0,r.jsx)("code",{children:"secret:write"}),", ",(0,r.jsx)("code",{children:"wallet:create:hot"}),", ",(0,r.jsx)("code",{children:"send:hot"}),")."]}),(0,r.jsx)(b.ks,{label:"Exclude Fields (CSV)",value:D,onChange:e=>_(e.target.value),placeholder:"password, seedPhrase",compact:!0}),eA.length>1&&(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsxs)("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] items-end gap-1.5",children:[(0,r.jsx)(b.UM,{label:"Agent Read/Write Scope",options:eA,value:(null==(a=eA[0])?void 0:a.value)||"agent:*",onChange:e=>{U.includes(e)||H(t=>[...t,e])},compact:!0}),(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:()=>H([]),children:"CLEAR"})]}),0===U.length?(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"Using base profile agent defaults."}):(0,r.jsx)("div",{className:"flex flex-wrap gap-1",children:U.map(e=>(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-1.5 py-0.5 text-[8px] text-[var(--color-text,#0a0a0a)]",children:[e,(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>H(t=>t.filter(t=>t!==e)),className:"h-4 px-1 text-[8px]",children:"X"})]},"pvs-".concat(e)))}),(0,r.jsx)("div",{className:"px-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:"Restricts which agents this profile can read/write credentials from. Select specific agents or leave empty for profile defaults."})]})]}),M&&(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-danger,#ef4444)]",children:M}),K&&(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-success,#16a34a)]",children:K}),(0,r.jsxs)("div",{className:"mt-3 flex gap-2",children:[(0,r.jsx)(b.$n,{size:"sm",onClick:ez,icon:(0,r.jsx)(I.A,{size:11}),children:y?"UPDATE PROFILE":"CREATE PROFILE"}),y&&(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:eS,children:"CANCEL"})]}),(0,r.jsxs)("div",{className:"mt-4 border-t border-[var(--color-border,#d4d4d8)] pt-3",children:[(0,r.jsxs)("div",{className:"mb-2 text-[9px] font-bold tracking-widest text-[var(--color-text-muted,#6b7280)]",children:["SAVED PROFILES (",h.length,")"]}),0===h.length?(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)]",children:"No custom profiles saved yet."}):(0,r.jsx)("div",{className:"space-y-2",children:h.map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] px-2 py-1.5",children:[(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>eO(e),className:"h-auto min-h-0 w-full justify-start px-0 py-0 text-left hover:bg-transparent",children:(0,r.jsxs)("span",{className:"block",children:[(0,r.jsx)("span",{className:"block text-[10px] text-[var(--color-text,#0a0a0a)]",children:e.name}),(0,r.jsxs)("span",{className:"block text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:[e.profile,"@",e.profileVersion]})]})}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>e_(e.id),icon:(0,r.jsx)(T.A,{size:10}),children:""})]},e.id))})]})]})]}),(0,r.jsxs)("div",{className:"mt-4 grid grid-cols-1 gap-4 xl:grid-cols-2",children:[(0,r.jsxs)("section",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-3",children:[(0,r.jsx)("div",{className:"mb-2 text-[10px] font-bold tracking-widest text-[var(--color-text,#0a0a0a)]",children:"PENDING AUTH REQUESTS"}),ek&&(0,r.jsx)("div",{className:"mb-2 text-[9px] text-[var(--color-text-muted,#6b7280)]",children:ek}),0===eI.length?(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)]",children:"No pending auth requests."}):(0,r.jsx)("div",{className:"space-y-2",children:eI.map(e=>{let t=function(e){if(!e)return{};try{let t=JSON.parse(e);if(t&&"object"==typeof t)return t;return{}}catch(e){return{}}}(e.metadata),a="string"==typeof t.agentId?t.agentId:"unknown-agent",l="object"==typeof t.profile&&t.profile&&"id"in t.profile?t.profile:null,s=l?"".concat(String(l.id),"@").concat(String(l.version||"v1")):"n/a",n=l?function(e){return e2[e]||"Custom profile: ".concat(e)}(String(l.id)):null,o=Array.isArray(t.permissions)?t.permissions:[],i=u==="resolve-".concat(e.id);return(0,r.jsxs)("div",{className:"rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] p-2",children:[(0,r.jsxs)("div",{className:"text-[9px] text-[var(--color-text,#0a0a0a)]",children:[a," \xb7 ",e.type]}),(0,r.jsxs)("div",{className:"mt-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:[s," \xb7 ",new Date(e.createdAt).toLocaleString()]}),n&&(0,r.jsx)("div",{className:"mt-1 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:n}),o.length>0&&(0,r.jsxs)("div",{className:"mt-1 flex flex-wrap gap-1",children:[o.slice(0,6).map(e=>(0,r.jsx)("span",{className:"border border-[var(--color-border,#d4d4d8)] px-1 py-0.5 text-[7px] text-[var(--color-text-muted,#6b7280)]",children:String(e)},e)),o.length>6&&(0,r.jsxs)("span",{className:"px-1 py-0.5 text-[7px] text-[var(--color-text-faint,#9ca3af)]",children:["+",o.length-6," more"]})]}),(0,r.jsxs)("div",{className:"mt-2 flex gap-2",children:[(0,r.jsx)(b.$n,{size:"sm",onClick:()=>{eW(e.id,!0)},loading:i,icon:i?void 0:(0,r.jsx)(ey.A,{size:10}),children:"APPROVE"}),(0,r.jsx)(b.$n,{size:"sm",variant:"secondary",onClick:()=>{eW(e.id,!1)},disabled:i,icon:(0,r.jsx)(eD.A,{size:10}),children:"REJECT"})]})]},e.id)})})]}),(0,r.jsxs)("section",{className:"border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#fff)] p-3",children:[(0,r.jsx)("div",{className:"mb-2 text-[10px] font-bold tracking-widest text-[var(--color-text,#0a0a0a)]",children:"ISSUED API KEYS"}),(0,r.jsxs)("div",{className:"mb-2 text-[8px] tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:["ACTIVE (",eK.length,")"]}),0===eK.length?(0,r.jsx)("div",{className:"mb-3 text-[9px] text-[var(--color-text-faint,#9ca3af)]",children:"No active non-admin tokens."}):(0,r.jsx)("div",{className:"mb-3 space-y-2",children:eK.map(e=>{let t=u==="revoke-".concat(e.tokenHash);return(0,r.jsxs)("div",{className:"rounded border border-[var(--color-border,#d4d4d8)] bg-[var(--color-background,#f4f4f5)] p-2",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text,#0a0a0a)]",children:e.agentId}),(0,r.jsx)("div",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:e5(e.tokenHash)})]}),(0,r.jsxs)("div",{className:"mt-1 text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:["perms: ",e.permissions.length," \xb7 expires: ",new Date(e.expiresAt).toLocaleString()]}),(0,r.jsx)("div",{className:"mt-2",children:(0,r.jsx)(b.$n,{size:"sm",variant:"secondary",onClick:()=>{m(e.tokenHash)},disabled:t,icon:t?(0,r.jsx)(ep.A,{size:10,className:"animate-spin"}):(0,r.jsx)(T.A,{size:10}),children:"REVOKE"})})]},e.tokenHash)})}),(0,r.jsxs)("div",{className:"mb-2 text-[8px] tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:["INACTIVE (",d.length,")"]}),0===d.length?(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)]",children:"No inactive tokens."}):(0,r.jsxs)("div",{className:"space-y-1.5",children:[d.slice(0,8).map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between rounded border border-[var(--color-border,#d4d4d8)] px-2 py-1 text-[8px] text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsx)("span",{children:e.agentId}),(0,r.jsx)("span",{children:e5(e.tokenHash)})]},"".concat(e.agentId,"-").concat(e.tokenHash))),d.length>8&&(0,r.jsxs)("div",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)]",children:["+",d.length-8," more inactive tokens"]})]})]})]})]})};var tt=a(16673),ta=a(65144);let tr={agentId:null,category:"all",tag:null,search:"",favoritesOnly:!1,lifecycle:"active"},tl="auramaxx_recently_accessed_credentials",ts="auramaxx_credentials_latest_access_at",tn=["username","url","content","key","value","cardholder","brand","last4","website","provider","identifier","token_endpoint","scopes","fingerprint"],to={active:"active",archive:"archive",archived:"archive",deleted:"recently_deleted",recently_deleted:"recently_deleted",recentlydeleted:"recently_deleted"},ti=(()=>{let e=new Map;for(let t of Object.values(g.Rn))for(let a of t)for(let t of(e.set(a.key.toLowerCase(),a.key),a.aliases||[]))e.set(t.toLowerCase(),a.key);return e})(),tc=(()=>{let e=[...tn,...Array.from(ti.values())],t=new Set,a=[];for(let r of e){let e=r.toLowerCase();t.has(e)||(t.add(e),a.push(r))}return a.slice(0,8)})();function td(e){return e<768?"mobile":e<1280?"tablet":"desktop"}function tu(e){return e.parentAgentId||e.linkedTo}function tx(e){return e.location?e.location:e.deletedAt?"recently_deleted":e.archivedAt?"archive":"active"}function tp(e){let t=e.createdAt?Date.parse(e.createdAt):NaN;return Number.isFinite(t)?t:0}function tf(e,t){let a=t[e.id];return"number"==typeof a&&Number.isFinite(a)&&a>0?a:tp(e)}function tm(e,t){let a={};for(let r of e){let e=t[r.id];if("number"==typeof e&&Number.isFinite(e)&&e>0){a[r.id]=e;continue}a[r.id]=tp(r)}return a}function tv(e){return e.trim().toLowerCase()}function th(e){return null==e?"":"string"==typeof e||"number"==typeof e||"boolean"==typeof e?String(e).toLowerCase():Array.isArray(e)?e.map(th).join(" "):"object"==typeof e?Object.values(e).map(th).join(" "):""}function tg(e){let t=e.trim().toLowerCase().replace(/\s+/g,"_");return ti.get(t)||t}let tb=e=>{let{onLock:t,onSettings:a}=e,{subscribe:s}=(0,e_.h)(),[n,o]=(0,l.useState)([]),[i,c]=(0,l.useState)([]),[d,p]=(0,l.useState)(null),[g,y]=(0,l.useState)(tr),[j,w]=(0,l.useState)(!0),[k,N]=(0,l.useState)("credentials"),[S,C]=(0,l.useState)({}),[A,I]=(0,l.useState)({}),[E,T]=(0,l.useState)(!1),[L,R]=(0,l.useState)(!1),[z,O]=(0,l.useState)(()=>td(window.innerWidth)),{clearToken:P,setToken:F}=(0,u.A)(),[D,_]=(0,l.useState)(!1),[U,H]=(0,l.useState)(!1),[M,W]=(0,l.useState)(!1),[K,B]=(0,l.useState)("api-key-form"),[$,G]=(0,l.useState)(null),[Y,q]=(0,l.useState)(null),[X,J]=(0,l.useState)(!1),[Q,Z]=(0,l.useState)(""),[et,ea]=(0,l.useState)("independent"),[er,el]=(0,l.useState)(""),[es,ei]=(0,l.useState)(""),[ec,ed]=(0,l.useState)(!1),[eu,ex]=(0,l.useState)(!1),[ep,ef]=(0,l.useState)(""),[em,ev]=(0,l.useState)(!1),[eh,eg]=(0,l.useState)(!1),[eb,ey]=(0,l.useState)(null),[ej,ew]=(0,l.useState)(""),[ek,eN]=(0,l.useState)(!1),[eS,eC]=(0,l.useState)(null),[eT,eL]=(0,l.useState)(null),[eR,ez]=(0,l.useState)(!1),[eO,eD]=(0,l.useState)(null),{requests:eH,notifications:eM,dismissNotification:eW,resolveAction:eK,revokeToken:eB=async()=>!1,activeTokens:e$=[],inactiveTokens:eV=[],actionLoading:eG}=(0,ta.S)({autoFetch:!0}),eY=(0,l.useRef)(null),eq=(0,l.useRef)(null),eX=(0,l.useRef)(null),eJ=(0,l.useRef)(null),eQ="mobile"===z,e0="tablet"===z,e1=(0,l.useCallback)(async()=>{try{let[e,t,a,r]=await Promise.all([x.FH.get(x.jI.Wallet,"/credentials",{location:"active"}),x.FH.get(x.jI.Wallet,"/credentials",{location:"archive"}),x.FH.get(x.jI.Wallet,"/credentials",{location:"recently_deleted"}),x.FH.get(x.jI.Wallet,"/agents/credential")]),l=(e,t)=>e.success?(e.credentials||[]).map(e=>({...e,location:t})):[],s=[...l(e,"active"),...l(t,"archive"),...l(a,"recently_deleted")];o(s),C(e=>tm(s,e)),I(e=>tm(s,e)),r.success&&c(r.agents)}catch(e){console.error("[CredentialAgent] fetch error:",e)}finally{w(!1)}},[]);(0,l.useEffect)(()=>{e1()},[e1]),(0,l.useEffect)(()=>{try{let e={},t=window.localStorage.getItem(ts);if(t){let a=JSON.parse(t);if(a&&"object"==typeof a&&!Array.isArray(a))for(let[t,r]of Object.entries(a))"number"==typeof r&&Number.isFinite(r)&&r>0&&(e[t]=r)}let a=window.localStorage.getItem(tl);if(a){let t=JSON.parse(a);if(Array.isArray(t)){let a=Date.now();t.filter(e=>"string"==typeof e).slice(0,8).forEach((t,r)=>{e[t]||(e[t]=a-r)})}}C(t=>({...t,...e})),I(t=>({...t,...e}))}catch(e){}},[]),(0,l.useEffect)(()=>{let e=Object.entries(S).filter(e=>{let[,t]=e;return"number"==typeof t&&Number.isFinite(t)&&t>0}),t=Object.fromEntries(e);window.localStorage.setItem(ts,JSON.stringify(t));let a=e.sort((e,t)=>t[1]-e[1]).slice(0,8).map(e=>{let[t]=e;return t});window.localStorage.setItem(tl,JSON.stringify(a))},[S]);let e4=(0,l.useCallback)(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now();C(a=>{let r=Number.isFinite(t)&&t>0?t:Date.now();return a[e]===r?a:{...a,[e]:r}})},[]),e2=(0,l.useCallback)(()=>{eX.current||(eX.current=setTimeout(()=>{eX.current=null,e1()},120))},[e1]);(0,l.useEffect)(()=>{let e=s(eU.Cw.CREDENTIAL_CHANGED,e=>{let t=e.data;(null==t?void 0:t.credentialId)&&e2()}),t=s(eU.Cw.CREDENTIAL_ACCESSED,e=>{let t=e.data;(null==t?void 0:t.credentialId)&&!0===t.allowed&&e4(t.credentialId)});return()=>{e(),t(),eX.current&&(clearTimeout(eX.current),eX.current=null),eJ.current&&(clearTimeout(eJ.current),eJ.current=null)}},[e2,s,e4]),(0,l.useEffect)(()=>{d&&!n.some(e=>e.id===d)&&(p(null),H(!1))},[n,d]),(0,l.useEffect)(()=>{let e=()=>O(td(window.innerWidth));return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),(0,l.useEffect)(()=>{eQ||e0||(_(!1),H(!1))},[eQ,e0]),(0,l.useEffect)(()=>{let e=()=>_(e=>!e);return window.addEventListener("leftrail:menu-toggle",e),()=>window.removeEventListener("leftrail:menu-toggle",e)},[]),(0,l.useEffect)(()=>{if(!E)return;let e=e=>{var t;let a=e.target;a&&(null!=(t=eq.current)&&t.contains(a)||(eJ.current&&(clearTimeout(eJ.current),eJ.current=null),R(!1),T(!1)))};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)}},[E]);let e8=(0,l.useMemo)(()=>{var e;return(null==(e=i.find(e=>e.isPrimary))?void 0:e.id)||""},[i]),e6=(0,l.useMemo)(()=>i.filter(e=>!tu(e)),[i]),e3=(0,l.useMemo)(()=>e6.map(e=>({value:e.id,label:e.name||(e.isPrimary?"Primary":"Agent ".concat(e.id.slice(0,6)))})),[e6]);(0,l.useEffect)(()=>{X&&el(e=>{var t;return e&&e3.some(t=>t.value===e)?e:(g.agentId&&e3.some(e=>e.value===g.agentId)?g.agentId:"")||e8||(null==(t=e3[0])?void 0:t.value)||""})},[g.agentId,e3,e8,X]),(0,l.useEffect)(()=>{if(0===i.length)return void ef("primary");let e=e8||i[0].id||"primary";ef(t=>t&&i.some(e=>e.id===t)?t:e)},[e8,i]);let e5=(0,l.useMemo)(()=>{if(!g.agentId)return null;let e=i.find(e=>e.id===g.agentId);return new Set(e?function(e,t){let a=new Map;for(let e of t){let t=tu(e);if(!t)continue;let r=a.get(t)||[];r.push(e),a.set(t,r)}let r=[],l=[e],s=new Set;for(;l.length>0;){let e=l.shift();if(!s.has(e))for(let t of(s.add(e),r.push(e),a.get(e)||[]))l.push(t.id)}return r}(e.id,i):[g.agentId])},[g.agentId,i]),e9=(0,l.useCallback)(e=>e5?e.filter(e=>e5.has(e.agentId)):e,[e5]),e7=(0,l.useMemo)(()=>{let e=new Map;for(let t of i)e.set(t.id,(t.name||(t.isPrimary?"Primary":"Agent ".concat(t.id.slice(0,6)))).toLowerCase());return e},[i]),tn=(0,l.useMemo)(()=>{let e=function(e){let t={terms:[],tagFilters:[],typeFilters:[],agentFilters:[],fieldFilters:[],lifecycleFilters:new Set,favoriteOnly:!1};for(let a of e.trim().split(/\s+/).map(e=>e.trim()).filter(Boolean)){let e=tv(a);if("favorite"===e||"favourite"===e||"fav"===e){t.favoriteOnly=!0;continue}let r=to[e];if(r){t.lifecycleFilters.add(r);continue}let l=a.indexOf(":");if(l<=0){t.terms.push(e);continue}let s=tv(a.slice(0,l)),n=tv(a.slice(l+1).trim());if(n){if("tag"===s){t.tagFilters.push(n);continue}if("type"===s){t.typeFilters.push(n);continue}if("agent"===s){t.agentFilters.push(n);continue}if("lifecycle"===s||"location"===s){let e=to[n];e&&t.lifecycleFilters.add(e);continue}if("favorite"===s||"fav"===s){t.favoriteOnly=!["false","0","no"].includes(n);continue}t.fieldFilters.push({key:tg(s),value:n})}}return t}(g.search),t=e.lifecycleFilters.size>0,a=e.terms,r=e9(n);if(r=t?r.filter(t=>e.lifecycleFilters.has(tx(t))):r.filter(e=>tx(e)===g.lifecycle),"all"!==g.category&&(r=r.filter(e=>e.type===g.category)),(g.favoritesOnly||e.favoriteOnly)&&(r=r.filter(e=>!!e.meta.favorite)),g.tag){let e=tv(g.tag);r=r.filter(t=>(t.meta.tags||[]).some(t=>tv(t).includes(e)))}e.tagFilters.length>0&&(r=r.filter(t=>{let a=(t.meta.tags||[]).map(e=>tv(e));return e.tagFilters.every(e=>a.some(t=>t.includes(e)))})),e.typeFilters.length>0&&(r=r.filter(t=>e.typeFilters.some(e=>tv(t.type).includes(e)))),e.agentFilters.length>0&&(r=r.filter(t=>{let a=e7.get(t.agentId)||tv(t.agentId);return e.agentFilters.every(e=>a.includes(e)||tv(t.agentId).includes(e))}));let l=r,s=r;return e.fieldFilters.length>0&&(s=s.filter(t=>e.fieldFilters.every(e=>(function(e,t,a){let r=tg(t);for(let[t,l]of Object.entries(e.meta||{}))if(tg(t)===r&&th(l).includes(a))return!0;return!1})(t,e.key,e.value)))),a.length>0&&(s=s.filter(e=>{let t=tx(e),r=(e.meta.tags||[]).map(e=>tv(e)).join(" "),l=e7.get(e.agentId)||tv(e.agentId),s=th(e.meta),n=[tv(e.name),tv(e.id),tv(e.type),r,l,s].join(" ");return a.every(a=>{if("favorite"===a||"favourite"===a||"fav"===a)return!!e.meta.favorite;let r=to[a];return r?t===r:n.includes(a)})})),{parsed:e,preTextFiltered:l,results:s}},[n,g,e9,e7]),ti=tn.results,tp=(0,l.useMemo)(()=>en(ti,A,g.search),[ti,A,g.search]),tb=(0,l.useMemo)(()=>{let e=g.search.trim();if(!e||e.includes(":")||ti.length>0)return[];let t=tv(e);return tn.preTextFiltered.some(e=>tv(e.name).includes(t))?[]:tc.map(t=>"".concat(t,":").concat(e))},[g.search,ti.length,tn.preTextFiltered]),ty=(0,l.useMemo)(()=>{let e=e9(n).filter(e=>tx(e)===g.lifecycle);if(g.tag){let t=g.tag;e=e.filter(e=>{var a;return null==(a=e.meta.tags)?void 0:a.includes(t)})}return g.favoritesOnly&&(e=e.filter(e=>e.meta.favorite)),{all:e.length,login:e.filter(e=>"login"===e.type).length,card:e.filter(e=>"card"===e.type).length,sso:e.filter(e=>"sso"===e.type).length,note:e.filter(e=>"note"===e.type).length,plain_note:e.filter(e=>"plain_note"===e.type).length,hot_wallet:e.filter(e=>"hot_wallet"===e.type).length,api:e.filter(e=>"api"===e.type).length,apikey:e.filter(e=>"apikey"===e.type).length,custom:e.filter(e=>"custom"===e.type).length,passkey:e.filter(e=>"passkey"===e.type).length,oauth2:e.filter(e=>"oauth2"===e.type).length,ssh:e.filter(e=>"ssh"===e.type).length,gpg:e.filter(e=>"gpg"===e.type).length}},[n,g.lifecycle,g.tag,g.favoritesOnly,e9]),tj=(0,l.useMemo)(()=>{let e=new Set;return e9(n).filter(e=>tx(e)===g.lifecycle).forEach(t=>{var a;return null==(a=t.meta.tags)?void 0:a.forEach(t=>e.add(t))}),Array.from(e).sort()},[n,g.lifecycle,e9]),tw=(0,l.useMemo)(()=>e9(n).filter(e=>tx(e)===g.lifecycle).filter(e=>e.meta.favorite).length,[n,g.lifecycle,e9]),tk=(0,l.useMemo)(()=>n.find(e=>e.id===d)||null,[n,d]),tN=(0,l.useMemo)(()=>{if(!tk)return"";let e=i.find(e=>e.id===tk.agentId);return e?e.name||(e.isPrimary?"Primary":e.id.slice(0,8)):"primary"===tk.agentId?"Primary":tk.agentId.slice(0,8)},[tk,i]),tS=(0,l.useMemo)(()=>tk?tx(tk):g.lifecycle,[tk,g.lifecycle]),tC=(0,l.useMemo)(()=>[...n].sort((e,t)=>tf(t,S)-tf(e,S)).slice(0,8),[n,S]),tA=(0,l.useCallback)(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:120;eJ.current&&clearTimeout(eJ.current),eJ.current=setTimeout(()=>{L||T(!1),eJ.current=null},e)},[L]),tI=(0,l.useMemo)(()=>eb?eb.name||(eb.isPrimary?"Primary":"Agent ".concat(eb.id.slice(0,6))):"Agent",[eb]),tE=(0,l.useMemo)(()=>eT?eT.name||(eT.isPrimary?"Primary":"Agent ".concat(eT.id.slice(0,6))):"Agent",[eT]),tT=(0,l.useMemo)(()=>null!==g.agentId||"all"!==g.category||null!==g.tag||""!==g.search.trim()||g.favoritesOnly,[g]),tL=(0,l.useCallback)(e=>{y(t=>({...t,...e}))},[]),tR=(0,l.useCallback)(()=>{y(tr)},[]),tz=(0,l.useCallback)(async()=>{try{await x.FH.post(x.jI.Wallet,"/lock",{})}catch(e){console.error("[CredentialAgent] lock error:",e)}P(),t()},[t,P]);(0,l.useCallback)(e=>{ey(e),ew(""),eC(null)},[]);let tO=(0,l.useCallback)(()=>{ey(null),ew(""),eC(null)},[]),tP=(0,l.useCallback)(async()=>{if(eb&&ej){eN(!0),eC(null);try{let e=await (0,x.WE)(ej,eb.id);e.token&&F(e.token),await e1(),y(e=>({...e,agentId:eb.id,lifecycle:"active",tag:null})),tO()}catch(e){eC(e.message||"Failed to unlock agent")}finally{eN(!1)}}},[ej,eb,F,e1,tO]),tF=(0,l.useCallback)(async e=>{try{await x.FH.post(x.jI.Wallet,"/agents/credential/".concat(encodeURIComponent(e),"/lock"),{}),await e1()}catch(e){console.error("[CredentialAgent] lock agent error:",e)}},[e1]),tD=(0,l.useCallback)(e=>{eL(e),eD(null)},[]),t_=(0,l.useCallback)(()=>{eR||(eL(null),eD(null))},[eR]),tU=(0,l.useCallback)(async()=>{if(eT){ez(!0),eD(null);try{await x.FH.delete(x.jI.Wallet,"/agents/credential/".concat(encodeURIComponent(eT.id))),y(e=>e.agentId===eT.id?{...e,agentId:null,lifecycle:"active",tag:null}:e),(null==tk?void 0:tk.agentId)===eT.id&&(p(null),H(!1)),await e1(),eL(null)}catch(e){eD(e.message||"Failed to delete agent")}finally{ez(!1)}}},[eT,e1,tk]),tH=(0,l.useCallback)(async()=>{if(d)try{let e=encodeURIComponent(tS);await x.FH.delete(x.jI.Wallet,"/credentials/".concat(d,"?location=").concat(e)),p(null),H(!1),e1()}catch(e){console.error("[CredentialAgent] delete error:",e)}},[d,tS,e1]),tM=(0,l.useCallback)(async()=>{if(d&&"active"!==tS)try{await x.FH.post(x.jI.Wallet,"/credentials/".concat(d,"/restore"),{from:tS}),p(null),H(!1),e1()}catch(e){console.error("[CredentialAgent] restore error:",e)}},[d,tS,e1]),tW=(0,l.useCallback)(async()=>{let e=ti.filter(e=>"archive"===tx(e));if(0!==e.length)try{await Promise.all(e.map(e=>x.FH.post(x.jI.Wallet,"/credentials/".concat(e.id,"/restore"),{from:"archive"}))),p(null),H(!1),e1()}catch(e){console.error("[CredentialAgent] restore-all error:",e)}},[ti,e1]),tK=(0,l.useCallback)(async()=>{let e=ti.filter(e=>"archive"===tx(e));if(0!==e.length)try{await Promise.all(e.map(e=>x.FH.delete(x.jI.Wallet,"/credentials/".concat(e.id,"?location=archive")))),p(null),H(!1),e1()}catch(e){console.error("[CredentialAgent] purge-all error:",e)}},[ti,e1]),tB=(0,l.useCallback)(async()=>{if(d)try{let e=await x.FH.post(x.jI.Wallet,"/credentials/".concat(d,"/duplicate"));await e1(),e.credential&&p(e.credential.id)}catch(e){console.error("[CredentialAgent] duplicate error:",e)}},[d,e1]),t$=(0,l.useCallback)((e,t)=>{o(a=>a.map(a=>a.id===e?{...a,meta:{...a.meta,favorite:t}}:a))},[]),tV=(0,l.useCallback)(()=>{Z(""),ea("independent"),el(""),ei("")},[]),tG=(0,l.useCallback)(()=>{J(!1),ev(!1),tV()},[tV]),tY=(0,l.useCallback)(async()=>{if(Q.trim()&&("independent"!==et||!(es.length<8))&&("linked"!==et||er)){ed(!0);try{var e;let t={name:Q.trim(),mode:et};if("linked"===et)t.parentAgentId=er;else{let e=await x.FH.get(x.jI.Wallet,"/auth/connect");t.encrypted=await (0,h.X)(es,e.publicKey)}let a=await x.FH.post(x.jI.Wallet,"/agents/credential",t),r=null==a||null==(e=a.agent)?void 0:e.id;em&&r&&ef(r),J(!1),ev(!1),tV(),await e1()}catch(e){console.error("[CredentialAgent] create agent error:",e)}finally{ed(!1)}}},[Q,et,er,es,em,e1,tV]),tq=(0,l.useCallback)(e=>{e?(ea("linked"),el(e)):(ea("independent"),el(""),ei("")),J(!0)},[]),tX=(0,l.useCallback)(()=>{var e;ef(e8||(null==(e=i[0])?void 0:e.id)||"primary"),ex(!0)},[e8,i]),tJ=(0,l.useCallback)(()=>{ev(!0),tq()},[tq]),tQ=(0,l.useCallback)(function(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"api-key-form",a=arguments.length>1?arguments[1]:void 0,r={},l=g.agentId||e8||(null==(e=i[0])?void 0:e.id);l&&(r.agentId=l),(null==a?void 0:a.applyFilters)?(g.tag&&(r.tags=[g.tag]),a.prefillType?r.type=a.prefillType:g.category&&"all"!==g.category&&(r.type=g.category)):(null==a?void 0:a.prefillType)&&(r.type=a.prefillType),q(null),B(t),G(Object.keys(r).length>0?r:null),W(!0)},[g,e8,i]),tZ=(0,l.useCallback)(async e=>{W(!1),q(null),G(null),await e1(),e&&(p(e),e4(e),eQ&&H(!0))},[e1,eQ,e4]),t0=(0,l.useCallback)(e=>{p(e),e4(e),eQ&&H(!0)},[eQ,e4]),t1=(0,l.useCallback)(e=>{tL({search:e}),T(!1),requestAnimationFrame(()=>{var e;return null==(e=eY.current)?void 0:e.focus()})},[tL]),t4=(0,l.useCallback)(e=>{tL({search:e.name}),t0(e.id),T(!1)},[tL,t0]),t2=(0,l.useMemo)(()=>g.search.trim()?[]:["tag:work","type:login","agent:primary","favorite","archived","recently_deleted"],[g.search]),t8=(E||L)&&""===g.search.trim();return(!function(e){let{filteredCredentials:t,selectedId:a,isMobile:r,searchRef:s,onCreateCredential:n,setSelectedId:o,setMobileDetailOpen:i}=e;(0,l.useEffect)(()=>{let e=e=>{let l=e.target,c="INPUT"===l.tagName||"TEXTAREA"===l.tagName,d=c||l.isContentEditable,u=e.key.toLowerCase();if(!d&&(e.metaKey||e.ctrlKey)&&"k"===u||!d&&"/"===e.key){var x;e.preventDefault(),null==(x=s.current)||x.focus();return}if(!d&&(e.metaKey||e.ctrlKey)&&e.altKey&&("n"===u||"KeyN"===e.code)){e.preventDefault(),n();return}if(!c&&("ArrowDown"===e.key||"ArrowUp"===e.key)){e.preventDefault();let r=t.findIndex(e=>e.id===a);if("ArrowDown"===e.key){let e=r+1;e<t.length&&o(t[e].id)}else{let e=r-1;e>=0&&o(t[e].id)}}!c&&"Enter"===e.key&&t.length>0&&(e.preventDefault(),o(null!=a?a:t[0].id),r&&i(!0))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t,a,r,s,n,o,i])}({filteredCredentials:tp,selectedId:d,isMobile:eQ,searchRef:eY,onCreateCredential:()=>tQ("api-key-form"),setSelectedId:p,setMobileDetailOpen:H}),j)?(0,r.jsxs)("div",{className:"h-full w-full flex items-center justify-center bg-[var(--color-background,#f4f4f5)] relative isolate agent-surface",children:[(0,r.jsxs)("div",{className:"absolute inset-0 pointer-events-none z-0 overflow-hidden",children:[(0,r.jsx)("div",{className:"absolute inset-0 bg-grid-adaptive bg-[size:4rem_4rem] opacity-30"}),(0,r.jsx)("div",{className:"absolute inset-0 tyvek-texture opacity-40 mix-blend-multiply"})]}),(0,r.jsxs)("div",{className:"flex flex-col items-center relative z-10",children:[(0,r.jsx)("div",{className:"w-6 h-6 border-2 border-[var(--color-border,#d4d4d8)] border-t-[var(--color-text,#0a0a0a)] animate-spin"}),(0,r.jsx)("div",{className:"mt-4 font-mono text-[10px] text-[var(--color-text-muted,#6b7280)] tracking-widest",children:"LOADING AGENT"})]})]}):(0,r.jsxs)("div",{className:"relative isolate h-full w-full overflow-hidden flex flex-col bg-[var(--color-background,#f4f4f5)] agent-surface",children:[(0,r.jsxs)("div",{className:"absolute inset-0 pointer-events-none z-0 overflow-hidden",children:[(0,r.jsx)("div",{className:"absolute inset-0 bg-grid-adaptive bg-[size:4rem_4rem] opacity-30"}),(0,r.jsx)("div",{className:"absolute inset-0 tyvek-texture opacity-40 mix-blend-multiply"}),(0,r.jsx)("div",{className:"absolute bottom-[5%] right-[5%] opacity-[0.03] select-none",children:(0,r.jsx)("div",{className:"text-[12vw] font-black leading-none text-[var(--color-text,#0a0a0a)] font-mono tracking-tighter text-right",children:"AURAMAXX"})}),(0,r.jsx)("div",{className:"absolute top-10 left-[200px] w-24 h-24 border-l-4 border-t-4 border-[var(--color-text,#0a0a0a)] opacity-10",children:(0,r.jsx)("div",{className:"absolute top-2 left-2 w-3 h-3 bg-[var(--color-text,#0a0a0a)]"})}),(0,r.jsx)("div",{className:"absolute bottom-10 right-10 w-24 h-24 border-r-4 border-b-4 border-[var(--color-text,#0a0a0a)] opacity-10 flex items-end justify-end",children:(0,r.jsx)("div",{className:"absolute bottom-2 right-2 w-3 h-3 bg-[var(--color-text,#0a0a0a)]"})})]}),(0,r.jsxs)("div",{className:"relative z-10 flex-1 flex overflow-hidden",children:[!eQ&&!e0&&(0,r.jsx)(V,{agents:e6,filters:g,categoryCounts:ty,tags:tj,favoritesCount:tw,onFilterChange:tL,onLock:tz,onLockAgent:tF,onCreateCredential:(e,t)=>tQ("type-picker"===e?"type-picker":"api-key-form",t?{prefillType:t}:void 0),onCreateAgent:tq,mode:"desktop",notifications:eM,onDismissNotification:eW,pendingActionCount:eM.filter(e=>"pending"===e.status&&"notify"!==e.type).length,surface:k,onSurfaceChange:N,onSettings:a,onDeleteAgent:tD}),"audit"===k?(0,r.jsx)("div",{className:"flex-1 h-full overflow-hidden",children:(0,r.jsx)(eZ,{})}):"apiKeys"===k?(0,r.jsx)("div",{className:"flex-1 h-full overflow-hidden",children:(0,r.jsx)(te,{requests:eH,activeTokens:e$,inactiveTokens:eV,actionLoading:eG,onResolveAction:eK,onRevokeToken:eB,agents:i})}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(eo,{credentials:ti,latestAccessById:A,selectedId:d,searchQuery:g.search,onSearchChange:e=>tL({search:e}),onSelect:t0,onAdd:()=>tQ("api-key-form"),onCreateWithFilter:tT?()=>tQ("api-key-form",{applyFilters:!0}):void 0,canAdd:"active"===g.lifecycle,onImport:"archive"!==g.lifecycle?tX:void 0,canImport:"active"===g.lifecycle,onOpenGenerator:"archive"!==g.lifecycle?()=>eg(!0):void 0,onRestoreAll:"archive"===g.lifecycle?tW:void 0,canRestoreAll:"archive"===g.lifecycle&&ti.length>0,onPurgeAll:"archive"===g.lifecycle?tK:void 0,canPurgeAll:"archive"===g.lifecycle&&ti.length>0,onClearFilters:tR,hasActiveFilters:tT,fieldSearchSuggestions:tb,onApplySearchSuggestion:t1,searchInputRef:eY,showSearch:!1,className:eQ?"flex-1 h-full flex flex-col pb-14 min-w-0":"w-[300px] h-full flex flex-col pb-14 border-r border-[var(--color-border,#d4d4d8)]",leadingAction:eQ?(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",icon:(0,r.jsx)(f.A,{size:12}),onClick:()=>_(!0),className:"!px-1.5 !h-8 !w-8","aria-label":"Open sidebar",title:"Open sidebar"}):void 0}),!eQ&&(0,r.jsx)("div",{className:"flex-1 h-full overflow-hidden pb-14",children:tk?(0,r.jsx)(eA,{credential:tk,agentName:tN,lifecycle:tS,onEdit:()=>q(tk.id),onDelete:tH,onRestore:tM,onDuplicate:tB,onFavoriteChange:t$}):(0,r.jsx)(eI,{variant:"active"!==g.lifecycle?"empty-lifecycle":0===n.filter(e=>"active"===tx(e)).length?"empty-agent":"no-selection",onAdd:"active"===g.lifecycle?()=>tQ("api-key-form"):void 0})})]}),"credentials"===k&&(0,r.jsx)("div",{className:"absolute bottom-0 z-30 border-t border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#ffffff)]/95 backdrop-blur-sm ".concat(eQ?"left-0 right-0 w-full":"".concat(e0?"left-0":"left-[200px]"," right-0")),children:(0,r.jsx)("div",{className:"w-full px-3 py-2.5",children:(0,r.jsxs)("div",{ref:eq,className:"relative w-full",children:[t8&&(0,r.jsxs)("div",{"data-testid":"search-dock-panel",className:"absolute bottom-full left-0 w-full mb-1 bg-[var(--color-surface,#ffffff)] border border-[var(--color-border-focus,#0a0a0a)] shadow-mech max-h-56 overflow-y-auto z-20",children:[tC.length>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"px-3 py-2 font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] border-b border-[var(--color-border-muted,#e5e7eb)] flex items-center gap-1.5",children:[(0,r.jsx)(m.A,{size:11}),"Recently Accessed"]}),tC.map(e=>(0,r.jsxs)("button",{type:"button",className:"w-full text-left px-4 py-2.5 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] font-mono text-xs border-b border-[var(--color-border-muted,#e5e5e5)] last:border-0",onMouseDown:t=>{t.preventDefault(),t4(e)},children:[(0,r.jsx)("div",{className:"text-[var(--color-text,#0a0a0a)] truncate",children:ee(e)}),(0,r.jsxs)("div",{className:"text-[9px] uppercase tracking-wider truncate",children:[e7.get(e.agentId)||e.agentId," \xb7 ",tx(e)]})]},e.id))]}),0===tC.length&&(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"px-3 py-2 font-mono text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] border-b border-[var(--color-border-muted,#e5e7eb)]",children:"Try Structured Search"}),t2.map(e=>(0,r.jsxs)("button",{type:"button",className:"w-full text-left px-4 py-2.5 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-background-alt,#f4f4f5)] font-mono text-xs border-b border-[var(--color-border-muted,#e5e5e5)] last:border-0 flex items-center gap-2 group/item",onMouseDown:t=>{t.preventDefault(),t1(e)},children:[(0,r.jsx)("div",{className:"w-1.5 h-1.5 flex-shrink-0 bg-[var(--color-border,#d4d4d8)] group-hover/item:bg-[var(--color-text,#0a0a0a)]"}),(0,r.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e})]},e))]})]}),(0,r.jsx)(b.ks,{compact:!0,leftElement:(0,r.jsx)(v.A,{size:12}),placeholder:"Search...",value:g.search,onChange:e=>tL({search:e.target.value}),inputRef:eY,onFocus:()=>{R(!0)},onClick:()=>{eJ.current&&(clearTimeout(eJ.current),eJ.current=null),T(!0)},onBlur:()=>{R(!1),tA()}})]})})})]}),(0,r.jsx)(tt.Z,{requests:eH,resolveAction:eK,actionLoading:eG}),eQ&&(0,r.jsx)(b._s,{isOpen:U&&null!=tk,onClose:()=>H(!1),title:(null==tk?void 0:tk.name)||"Credential",subtitle:tN||"Credential_Detail",width:"full",children:tk?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:()=>H(!1),className:"mb-3",children:"BACK"}),(0,r.jsx)(eA,{credential:tk,agentName:tN,lifecycle:tS,onEdit:()=>q(tk.id),onDelete:tH,onRestore:tM,onDuplicate:tB,onFavoriteChange:t$})]}):(0,r.jsx)(eI,{variant:"active"!==g.lifecycle?"empty-lifecycle":0===n.length?"empty-agent":"no-selection",onAdd:"active"===g.lifecycle?()=>tQ("api-key-form"):void 0})}),(eQ||e0)&&D&&(0,r.jsxs)("div",{className:"absolute inset-0 z-40",children:[(0,r.jsx)("button",{type:"button","aria-label":"Close sidebar",onClick:()=>_(!1),className:"absolute inset-0 bg-[var(--color-text,#0a0a0a)]/20"}),(0,r.jsx)("div",{className:"absolute left-0 top-0 h-full",children:(0,r.jsx)(V,{agents:e6,filters:g,categoryCounts:ty,tags:tj,favoritesCount:tw,onFilterChange:tL,onLock:tz,onLockAgent:tF,onCreateCredential:(e,t)=>tQ("type-picker"===e?"type-picker":"api-key-form",t?{prefillType:t}:void 0),onCreateAgent:tq,mode:"mobile",onNavigate:()=>_(!1),notifications:eM,onDismissNotification:eW,pendingActionCount:eM.filter(e=>"pending"===e.status&&"notify"!==e.type).length,surface:k,onSurfaceChange:N,onSettings:a,onDeleteAgent:tD})})]}),(0,r.jsx)(b.aF,{isOpen:null!=eT,onClose:t_,title:"Delete ".concat(tE,"?"),size:"sm",footer:(0,r.jsxs)("div",{className:"flex gap-2 justify-end",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:t_,disabled:eR,children:"CANCEL"}),(0,r.jsx)(b.$n,{variant:"danger",size:"sm",onClick:tU,loading:eR,children:"DELETE"})]}),children:(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"This will permanently delete the agent and its credentials."}),eO&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger,#ef4444)] border border-[var(--color-danger,#ef4444)]/30 bg-[var(--color-danger,#ef4444)]/10 px-3 py-2",children:eO})]})}),(0,r.jsx)(b.aF,{isOpen:null!=eb,onClose:tO,title:"Unlock ".concat(tI),size:"sm",footer:(0,r.jsxs)("div",{className:"flex gap-2 justify-end",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:tO,children:"CANCEL"}),(0,r.jsx)(b.$n,{size:"sm",onClick:tP,loading:ek,disabled:!ej,children:"UNLOCK"})]}),children:(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)(b.ks,{label:"Agent Password",type:"password",placeholder:"Enter agent password",value:ej,onChange:e=>ew(e.target.value),autoFocus:!0}),eS&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger,#ef4444)] border border-[var(--color-danger,#ef4444)]/30 bg-[var(--color-danger,#ef4444)]/10 px-3 py-2",children:eS})]})}),(0,r.jsx)(eE.i,{isOpen:M||!!Y,onClose:()=>{W(!1),q(null),G(null)},onSaved:tZ,editCredentialId:null!=Y?Y:void 0,agents:i,createStartStep:"type-picker"===K?"type":"form",createStartType:"type-picker"===K?void 0:"apikey",createPrefill:null!=$?$:void 0}),(0,r.jsx)(eP,{isOpen:eu,onClose:()=>ex(!1),onComplete:e1,agents:i,selectedAgentId:ep,onSelectedAgentIdChange:ef,onAddAgent:tJ,walletBaseUrl:(0,x.au)()}),(0,r.jsx)(eF.p,{isOpen:eh,onClose:()=>eg(!1),onUse:e=>{eg(!1),navigator.clipboard.writeText(e).catch(()=>{})}}),(0,r.jsx)(b.aF,{isOpen:X,onClose:tG,title:"New Agent",size:"md",footer:(0,r.jsxs)("div",{className:"flex gap-2 justify-end",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:tG,children:"CANCEL"}),(0,r.jsx)(b.$n,{size:"sm",onClick:tY,loading:ec,disabled:!Q.trim()||"linked"===et&&!er||"independent"===et&&es.length<8,children:"CREATE"})]}),children:(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)(b.ks,{label:"Agent Name",placeholder:"e.g. Work, Personal",value:Q,onChange:e=>Z(e.target.value),autoFocus:!0}),(0,r.jsx)(b.ks,{label:"Agent Password",type:"password",placeholder:"At least 8 characters",value:es,onChange:e=>ei(e.target.value)})]})})]})};var ty=a(26399),tj=a(78192),tw=a(12108),tk=a(85710);let tN=new Set(["telegram","webhook","whatsapp","discord"]),tS={telegram:["botToken"],discord:["botToken"]},tC=["botToken","token"],tA=["channelId","channel_id"],tI=["telegram","whatsapp","discord"];function tE(e,t){if(!e)return null;for(let a of t){let t=e[a];if("string"==typeof t&&t.trim())return t.trim()}return null}function tT(e){return!!new Set((e.secretKeys||[]).filter(e=>"string"==typeof e).map(e=>e.trim())).has("botToken")||!!e.hasSecrets||null!==tE(e.config,tC)}function tL(e){return"whatsapp"===e?{type:e,enabled:!1,config:{allowFrom:["*"],dmPolicy:"open",groupPolicy:"allowlist"},chat:{enabled:!1},hasSecrets:!1,secretKeys:[]}:"discord"===e?{type:e,enabled:!1,config:{channelId:""},chat:{enabled:!1},hasSecrets:!1,secretKeys:[]}:{type:e,enabled:!1,config:{},chat:{enabled:!1},hasSecrets:!1,secretKeys:[]}}function tR(e){let{isOpen:t,onClose:a,passwordChangeSuccess:s,agentThemeOpen:n,onToggleAgentTheme:o,colorMode:i,uiScale:c,onColorModeChange:d,onUiScaleChange:p,agentColorModeOptions:f,agentUiScaleOptions:m,agentSettingsOpen:v,onToggleAgentSettings:h,policyLoadError:g,policyLoading:y,onRetryLoadPolicy:j,policyForm:w,onPolicyAutoApproveChange:k,localProfileOptions:N,onPolicyProfileChange:S,localProjectScopeOptions:C,onPolicyProjectScopeModeChange:A,dangerConfirmOpen:I,onCancelDangerConfirm:E,onConfirmDangerousSave:T,policySaving:L,policySaveError:R,policySaveSuccess:O,canSavePolicy:P,onSavePolicy:F,securitySettingsOpen:D,onToggleSecuritySettings:_,passwordChangeError:U,onOpenPasswordModal:H,backupSectionOpen:M,onToggleBackupSection:W,creatingBackup:K,onCreateBackup:B,exportingDb:$,onExportDb:V,backupsLoading:q,backups:X,formatBackupDate:J,formatSize:Q,restoreConfirmOpen:Z,onOpenRestoreConfirm:ee,onCloseRestoreConfirm:et,onConfirmRestore:ea,restoringBackup:er,dangerZoneOpen:el,onToggleDangerZone:es,nukeError:en,onOpenNukeConfirm:eo,nuking:ei}=e,{token:ed}=(0,u.A)(),[eu,ex]=(0,l.useState)(!1),[ef,em]=(0,l.useState)([]),[ev,eh]=(0,l.useState)(!1),[eg,eb]=(0,l.useState)(null),[ey,ej]=(0,l.useState)(null),[ew,ek]=(0,l.useState)({}),[eN,eS]=(0,l.useState)({}),[eC,eA]=(0,l.useState)({}),[eI,eE]=(0,l.useState)({}),[eT,eL]=(0,l.useState)({}),[eR,ez]=(0,l.useState)({}),[eO,eP]=(0,l.useState)({}),[eF,eD]=(0,l.useState)(!1),[e_,eU]=(0,l.useState)("idle"),[eH,eM]=(0,l.useState)(null),[eW,eK]=(0,l.useState)(null),eB=(0,l.useCallback)(async()=>{if(!ed){em([]),eb("Unlock agent first to manage adapters.");return}eh(!0),eb(null);try{let e=await x.FH.get(x.jI.Wallet,"/adapters"),t=Array.isArray(e.adapters)?e.adapters:[],a=new Map;for(let e of t){let t=e.type.trim().toLowerCase();a.set(t,e)}let r=tI.map(e=>a.get(e)||tL(e));em(r)}catch(e){em([]),eb(e.message||"Failed to load adapters.")}finally{eh(!1)}},[ed]),e$=(0,l.useCallback)(()=>{let e=!eu;ex(e),e&&eB()},[eu,eB]),eV=(0,l.useCallback)(async(e,t)=>{let a=ef.find(t=>t.type===e);if(!a)return;let r={...tL(a.type.trim().toLowerCase()).config||{},...a.config||{}};eb(null),ek(t=>({...t,[e]:!0}));try{await x.FH.post(x.jI.Wallet,"/adapters",{type:a.type,enabled:t,config:r,chat:{enabled:t}}),em(a=>a.map(a=>a.type===e?{...a,enabled:t,chat:{enabled:t}}:a))}catch(t){eb(t.message||"Failed to update channel state for ".concat(e,"."))}finally{ek(t=>({...t,[e]:!1}))}},[ef]),eG=(0,l.useCallback)(async e=>{let t=e.trim().toLowerCase(),a=ef.find(e=>e.type.trim().toLowerCase()===t),r=a?function(e){let t=e.type.trim().toLowerCase();if("telegram"===t&&tT(e))return[];let a=tS[t]||[],r=new Set((e.secretKeys||[]).filter(e=>"string"==typeof e).map(e=>e.trim()));return a.filter(e=>!r.has(e))}(a):[];if(!tN.has(t))return void eb("".concat(e," does not support test yet."));if(r.length>0)return void eb("Cannot test ".concat(e,": missing ").concat(r.join(", "),"."));eb(null),ej(null),eS(e=>({...e,[t]:!0}));try{let a=await x.FH.post(x.jI.Wallet,"/adapters/test",{type:t});if(a&&!1===a.success)throw Error(a.error||"Adapter test failed for ".concat(e,"."));ej(a.message||"Test sent for ".concat(e,"."))}catch(r){let a=r.message||"Failed to test adapter ".concat(e,".");a.includes("Unknown adapter type")?"whatsapp"===t?eb("WhatsApp test support is available in code, but your running wallet server is outdated. Restart AuraMaxx and test again."):eb("".concat(e," does not support test yet.")):a.includes("Telegram bot token not configured")?eb("Telegram bot token not configured. Enable Telegram and add the bot token in setup."):(a.includes("Telegram chat ID not configured"),eb(a))}finally{eS(e=>({...e,[t]:!1}))}},[ef]),eY=(0,l.useCallback)(async e=>{let t=!eI[e];if(eE(a=>({...a,[e]:t})),!t)return;let a=eT[e];if("string"==typeof a&&a.trim().length>0)return;let r=e.trim().toLowerCase();if("telegram"!==r&&"discord"!==r)return;let l=ef.find(t=>t.type===e);if("discord"===r){let t=tE(null==l?void 0:l.config,tA)||"";ez(a=>({...a,[e]:t}))}try{let t=await x.FH.get(x.jI.Wallet,"/adapters/".concat(encodeURIComponent(r),"/secrets/").concat(encodeURIComponent("botToken"))),a="string"==typeof t.value?t.value.trim():"";a?eL(t=>({...t,[e]:a})):eL(t=>({...t,[e]:""}))}catch(a){let t=a.message||"";t.includes("not configured")||t.includes("(404)")||eb(t||"Failed to load ".concat(r," bot token.")),eL(t=>({...t,[e]:""}))}},[ef,eR,eT,eI]),eq=(0,l.useCallback)(async e=>{let t=ef.find(t=>t.type===e);if(!t)return;let a=t.type.trim().toLowerCase(),r=(eT[e]||"").trim(),l=(eR[e]||"").trim();if(!r)return void eb("".concat(t.type," bot token is required."));if("discord"===a&&!l)return void eb("Discord channel ID is required.");eb(null),ej(null),eP(t=>({...t,[e]:!0}));try{let s={type:t.type,enabled:t.enabled,config:{...t.config||{},..."discord"===a?{channelId:l}:{}},secrets:{botToken:r}};t.chat&&(s.chat=t.chat),await x.FH.post(x.jI.Wallet,"/adapters",s),ej("".concat(t.type," settings saved.")),eL(t=>({...t,[e]:""})),await eB()}catch(t){eb(t.message||"Failed to save token for ".concat(e,"."))}finally{eP(t=>({...t,[e]:!1}))}},[eB,ef,eR,eT]),eX=(0,l.useCallback)(async()=>{try{let e=await x.FH.get(x.jI.Wallet,"/adapters/whatsapp/setup-qr"),t=e.status||"idle";eU(t),eM("string"==typeof e.qr&&e.qr.trim()?e.qr:null),eK("string"==typeof e.error&&e.error.trim()?e.error:null),"connected"===t&&"connected"!==e_&&(ej("WhatsApp linked successfully."),await eB(),await x.FH.post(x.jI.Wallet,"/adapters/restart",{}))}catch(e){eK(e.message||"Failed to read WhatsApp setup status.")}},[eB,e_]),eJ=(0,l.useCallback)(async()=>{eb(null),ej(null),eK(null),eD(!0);try{let e=await x.FH.post(x.jI.Wallet,"/adapters/whatsapp/setup-qr",{});if(!1===e.success)throw Error(e.error||"Failed to start WhatsApp QR setup.");let t=e.status||"idle";eU(t),eM("string"==typeof e.qr&&e.qr.trim()?e.qr:null),eK("string"==typeof e.error&&e.error.trim()?e.error:null),"connected"===t&&(ej("WhatsApp linked successfully."),await eB(),await x.FH.post(x.jI.Wallet,"/adapters/restart",{}))}catch(e){eK(e.message||"Failed to start WhatsApp setup.")}finally{eD(!1)}},[eB]),eQ=(0,l.useCallback)(async()=>{try{await x.FH.post(x.jI.Wallet,"/adapters/whatsapp/setup-qr/stop",{})}catch(e){}finally{eU("idle"),eM(null),eK(null),eD(!1)}},[]),eZ=(0,l.useCallback)(async e=>{let t=e.trim().toLowerCase();eb(null),ej(null),eA(e=>({...e,[t]:!0}));try{await x.FH.delete(x.jI.Wallet,"/adapters/".concat(encodeURIComponent(t))),await eB(),ej("Deleted ".concat(e," adapter."))}catch(t){eb(t.message||"Failed to delete adapter ".concat(e,"."))}finally{eA(e=>({...e,[t]:!1}))}},[eB]);return(0,l.useEffect)(()=>{if(!eu||"waiting_qr"!==e_&&"qr_ready"!==e_)return;eX();let e=setInterval(()=>{eX()},2e3);return()=>clearInterval(e)},[eu,eX,e_]),(0,l.useEffect)(()=>{t||("idle"!==e_&&eQ(),ex(!1),ej(null),eb(null),ek({}),eS({}),eA({}),eE({}),eL({}),ez({}),eP({}))},[eQ,t,e_]),(0,r.jsx)(b._s,{isOpen:t,onClose:a,title:"Settings",subtitle:"Local socket policy",footerLabel:"",children:(0,r.jsxs)("div",{className:"space-y-4",children:[s&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-info)] border border-[var(--color-info)]/30 bg-[var(--color-info)]/10 px-3 py-2",children:s}),(0,r.jsxs)(b.lX,{title:"Agent Theme",isOpen:n,onToggle:o,className:"overflow-hidden",contentClassName:"p-[var(--space-md)] border-t border-[var(--color-border)]",children:[(0,r.jsx)("label",{className:"block text-[9px] text-[var(--color-text-faint)] tracking-widest mb-2",children:"Color mode"}),(0,r.jsx)(b.O6,{options:[...f],value:i,onChange:e=>d(e)}),(0,r.jsx)("label",{className:"block mt-3 text-[9px] text-[var(--color-text-faint)] tracking-widest mb-2",children:"UI scale"}),(0,r.jsx)(b.O6,{options:[...m],value:c,onChange:e=>p(e)}),(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-text-muted)]",children:"Dark adjusts agent color contrast. Big increases typography, spacing, radius, and shadows."})]}),(0,r.jsxs)(b.lX,{title:"Agent Profile",icon:(0,r.jsx)(tj.A,{size:12}),isOpen:v,onToggle:h,className:"overflow-hidden",contentClassName:"px-4 pb-4 space-y-3 border-t border-[var(--color-border)]",children:[g&&(0,r.jsxs)("div",{className:"space-y-2 pt-3",children:[(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)] border border-[var(--color-danger)]/30 bg-[var(--color-danger)]/10 px-3 py-2",children:g}),(0,r.jsx)(b.$n,{type:"button",onClick:j,disabled:y,variant:"secondary",size:"md",children:y?"Retrying...":"Retry load"})]}),!g&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"pt-3 flex items-center justify-between text-[10px] font-mono text-[var(--color-text)]",children:[(0,r.jsx)("span",{children:"Auto-approve local requests"}),(0,r.jsx)(b.lM,{size:"sm",checked:w.autoApprove,onChange:k,disabled:y||L})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] text-[var(--color-text-faint)] tracking-widest mb-2",children:"Local profile"}),(0,r.jsx)(b.O6,{ariaLabel:"Local profile",options:[...N],value:w.profile,onChange:e=>S(e),disabled:y||L})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] text-[var(--color-text-faint)] tracking-widest mb-2",children:"Project scope mode"}),(0,r.jsx)(b.O6,{ariaLabel:"Project scope mode",options:[...C],value:w.projectScopeMode,onChange:e=>A(e),disabled:y||L}),(0,r.jsx)("div",{className:"mt-1 text-[9px] text-[var(--color-text-muted)]",children:"Strict requires `.aura` mappings for `get_secret`. Auto allows token-scope fallback when `.aura` is missing."})]}),I&&(0,r.jsxs)("div",{className:"text-[10px] text-[var(--color-danger)] border border-[var(--color-danger)]/30 bg-[var(--color-danger)]/10 px-3 py-2 space-y-2",children:[(0,r.jsx)("div",{children:"Dangerous mode broadens local token scope (admin profile or super-scopes)."}),(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(b.$n,{type:"button",onClick:E,variant:"secondary",size:"sm",className:"!h-8",children:"Cancel"}),(0,r.jsx)(b.$n,{type:"button",onClick:T,disabled:L,variant:"danger",size:"sm",className:"!h-8",children:"Confirm dangerous mode"})]})]}),(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)] px-3 py-2",children:"Make sure you restart AuraMaxx to apply the new policy. Policy changes apply to newly issued local tokens only."}),R&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)]",children:R}),O&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-info)]",children:O}),(0,r.jsx)(b.$n,{type:"button",onClick:F,disabled:!P,variant:"primary",size:"lg",className:"w-full",children:L?"Saving...":"Save local policy"})]})]}),(0,r.jsxs)(b.lX,{title:"Primary Password",icon:(0,r.jsx)(Y.A,{size:12}),isOpen:D,onToggle:_,className:"overflow-hidden",contentClassName:"px-4 pb-4 pt-3 space-y-3 border-t border-[var(--color-border)]",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)] leading-relaxed",children:"Rotate your primary agent password. This updates the agent wrapper encryption and keeps existing credentials intact."}),U&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)] border border-[var(--color-danger)]/30 bg-[var(--color-danger)]/10 px-3 py-2",children:U}),(0,r.jsx)(b.$n,{type:"button",onClick:H,variant:"secondary",size:"lg",className:"w-full",children:"Change primary password"})]}),(0,r.jsxs)(b.lX,{title:"Adapters (Beta)",icon:(0,r.jsx)(tj.A,{size:12}),isOpen:eu,onToggle:e$,className:"overflow-hidden",contentClassName:"px-4 pb-4 pt-3 space-y-3 border-t border-[var(--color-border)]",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)] leading-relaxed",children:"Enable and configure adapters to approve in a channel."}),(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)] leading-relaxed",children:"Note: If you use the same adapters as OpenClaw, it might cause race conditions."}),ey&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-info)] border border-[var(--color-info)]/30 bg-[var(--color-info)]/10 px-3 py-2",children:ey}),eg&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)] border border-[var(--color-danger)]/30 bg-[var(--color-danger)]/10 px-3 py-2",children:function e(t){var a,l;let s=Array.from(t.matchAll(/@([a-zA-Z0-9_]{3,}) \((https:\/\/t\.me\/[^\s),]+)\)/g));if(s.length>0){let l=[],n=0;for(let[o,i]of s.entries()){let s=i[1],c=i[2],d=null!=(a=i.index)?a:0,u=i[0];d>n&&l.push(e(t.slice(n,d))),l.push((0,r.jsxs)("span",{children:[(0,r.jsxs)("a",{href:c,target:"_blank",rel:"noreferrer",className:"underline decoration-dotted underline-offset-2 hover:no-underline",children:["@",s]})," (",(0,r.jsx)("a",{href:c,target:"_blank",rel:"noreferrer",className:"underline decoration-dotted underline-offset-2 hover:no-underline",children:c}),")"]},"bot-".concat(s,"-").concat(d,"-").concat(o))),n=d+u.length}return n<t.length&&l.push(e(t.slice(n))),l}let n=Array.from(t.matchAll(/https?:\/\/[^\s),]+/g));if(0===n.length)return t;let o=[],i=0;for(let[e,a]of n.entries()){let s=a[0],n=null!=(l=a.index)?l:0;n>i&&o.push(t.slice(i,n)),o.push((0,r.jsx)("a",{href:s,target:"_blank",rel:"noreferrer",className:"underline decoration-dotted underline-offset-2 hover:no-underline",children:s},"".concat(s,"-").concat(n,"-").concat(e))),i=n+s.length}return i<t.length&&o.push(t.slice(i)),o}(eg)}),(0,r.jsxs)("div",{className:"border-t border-dashed border-[var(--color-border)] pt-3 space-y-2",children:[(0,r.jsx)("div",{className:"font-mono text-[9px] tracking-widest text-[var(--color-text-faint)]",children:"EXISTING ADAPTERS"}),ev?(0,r.jsx)("div",{className:"py-2 flex items-center justify-center",children:(0,r.jsx)(ep.A,{size:14,className:"animate-spin text-[var(--color-text-muted)]"})}):0===ef.length?(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted)] px-2 py-1",children:"No adapters configured yet."}):(0,r.jsx)("div",{className:"space-y-1",children:ef.map(e=>{var t,a;let l=!!(e.enabled&&(null==(t=e.chat)?void 0:t.enabled)),s=!!ew[e.type],n=e.type.trim().toLowerCase(),o=!!eN[n],i=!!(eC[n]||eC[e.type]),c=!!eI[e.type],d=!!eO[e.type],u=eT[e.type]||"",x="telegram"===n?tT(e):null==(a=e.secretKeys)?void 0:a.includes("botToken"),p=eH?"https://api.qrserver.com/v1/create-qr-code/?size=220x220&margin=0&data=".concat(encodeURIComponent(eH)):null;return(0,r.jsxs)("div",{className:"border border-[var(--color-border)] bg-[var(--color-surface-alt)] px-2 py-2 text-[10px]",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsx)("span",{className:"font-mono text-[var(--color-text)] uppercase tracking-wider",children:e.type}),(0,r.jsxs)("span",{className:"flex items-center gap-2 text-[9px] text-[var(--color-text-muted)]",children:[s&&(0,r.jsx)("span",{children:"saving..."}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:()=>{eG(e.type)},disabled:s||o||i||d||eF,loading:o,children:"TEST"}),(0,r.jsx)(b.$n,{type:"button",variant:"danger",size:"sm",onClick:()=>{eZ(e.type)},disabled:s||o||i||d||eF,loading:i,children:"DELETE"}),(0,r.jsx)(b.lM,{size:"sm",checked:l,onChange:t=>{eV(e.type,t)},disabled:s||o||i||d||eF}),("telegram"===n||"whatsapp"===n||"discord"===n)&&l&&(0,r.jsx)("button",{type:"button",onClick:()=>{eY(e.type)},disabled:s||o||i||d||eF,"aria-label":c?"Hide adapter setup":"Show adapter setup",className:"inline-flex h-5 w-5 items-center justify-center text-[var(--color-text-muted)] hover:text-[var(--color-text)] disabled:opacity-50",children:c?(0,r.jsx)(tw.A,{size:11}):(0,r.jsx)(ec.A,{size:11})})]})]}),"telegram"===n&&c&&(0,r.jsxs)("div",{className:"mt-2 border-t border-dashed border-[var(--color-border)] pt-2 space-y-2",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)]",children:x?"Replace Telegram bot token":"Add Telegram bot token"}),(0,r.jsx)(b.ks,{type:"password",value:u,onChange:t=>{let a=t.target.value;eL(t=>({...t,[e.type]:a}))},placeholder:"123456:ABC...",disabled:s||o||i||d||eF,autoComplete:"off"}),(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)]",children:"Current token stays hidden. Enter a new token to replace it."}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:()=>{eq(e.type)},disabled:s||o||i||d||eF||!u.trim(),loading:d,className:"w-full",children:"SAVE TOKEN"})]}),"discord"===n&&c&&(0,r.jsxs)("div",{className:"mt-2 border-t border-dashed border-[var(--color-border)] pt-2 space-y-2",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)]",children:"Add your Discord bot token and target channel ID."}),(0,r.jsx)(b.ks,{type:"password",value:u,onChange:t=>{let a=t.target.value;eL(t=>({...t,[e.type]:a}))},placeholder:"Discord bot token",disabled:s||o||i||d||eF,autoComplete:"off"}),(0,r.jsx)(b.ks,{value:eR[e.type]||"",onChange:t=>{let a=t.target.value;ez(t=>({...t,[e.type]:a}))},placeholder:"Discord channel ID",disabled:s||o||i||d||eF,autoComplete:"off"}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:()=>{eq(e.type)},disabled:s||o||i||d||eF||!u.trim()||!(eR[e.type]||"").trim(),loading:d,className:"w-full",children:"SAVE DISCORD SETTINGS"})]}),"whatsapp"===n&&c&&(0,r.jsxs)("div",{className:"mt-2 border-t border-dashed border-[var(--color-border)] pt-2 space-y-2",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)]",children:"Scan this QR code with WhatsApp to link Aura directly."}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:()=>{eJ()},loading:eF,disabled:s||o||i||d||eF,className:"w-full",children:"connected"===e_?"LINKED":"GENERATE QR"}),"waiting_qr"===e_&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted)]",children:"Waiting for QR code..."}),eW&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger)]",children:eW}),"connected"===e_&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-info)]",children:"WhatsApp connected. You can approve actions from your phone."}),p&&(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsx)("img",{src:p,alt:"WhatsApp setup QR",className:"mx-auto h-[180px] w-[180px] border border-[var(--color-border)] bg-white"}),(0,r.jsxs)("div",{className:"text-[8px] text-[var(--color-text-faint)] leading-relaxed break-all",children:["QR payload: ",eH]}),(0,r.jsx)(b.$n,{type:"button",variant:"secondary",size:"sm",onClick:()=>{eQ()},className:"w-full",children:"STOP QR"})]})]})]},e.type)})})]})]}),(0,r.jsxs)(b.lX,{title:"Database Backup",icon:(0,r.jsx)(tk.A,{size:12}),isOpen:M,onToggle:W,className:"overflow-hidden",contentClassName:"px-4 pb-4 pt-3 space-y-3 border-t border-[var(--color-border)]",children:[(0,r.jsxs)("div",{className:"flex gap-2",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"md",onClick:B,disabled:K,loading:K,icon:K?void 0:(0,r.jsx)(z.A,{size:12}),className:"flex-1",children:K?"CREATING...":"CREATE BACKUP"}),(0,r.jsx)(b.$n,{variant:"secondary",size:"md",onClick:V,disabled:$,loading:$,icon:$?void 0:(0,r.jsx)(tk.A,{size:12}),className:"flex-1",children:$?"EXPORTING...":"EXPORT DB"})]}),q?(0,r.jsx)("div",{className:"py-4 flex items-center justify-center",children:(0,r.jsx)(ep.A,{size:16,className:"animate-spin text-[var(--color-text-muted)]"})}):0===X.length?(0,r.jsx)("div",{className:"py-3 text-center",children:(0,r.jsx)("div",{className:"font-mono text-[9px] text-[var(--color-text-muted)]",children:"No backups found"})}):(0,r.jsx)("div",{className:"space-y-1 max-h-48 overflow-y-auto",children:X.map(e=>(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsxs)(b.$n,{type:"button",variant:"secondary",size:"md",onClick:t=>{ee(e.filename,t.currentTarget)},className:"w-full !h-auto !px-2 !py-2 !justify-between group",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(G.A,{size:10,className:"text-[var(--color-text-muted)] group-hover:text-[var(--color-text)]"}),(0,r.jsx)("span",{className:"font-mono text-[10px] text-[var(--color-text)]",children:J(e.timestamp)})]}),(0,r.jsx)("span",{className:"font-mono text-[9px] text-[var(--color-text-muted)]",children:Q(e.size)})]}),(0,r.jsx)(b.Rw,{isOpen:Z===e.filename,onClose:et,onConfirm:()=>ea(e.filename),title:"Restore Backup",message:"Restore to this backup? You will lose all data since this backup was created.",confirmText:"RESTORE",variant:"warning",loading:er===e.filename})]},e.filename))}),(0,r.jsx)("div",{className:"pt-2 border-t border-dashed border-[var(--color-border)]",children:(0,r.jsx)("div",{className:"font-mono text-[8px] text-[var(--color-text-faint)] leading-relaxed",children:"Backups are tied to the current database schema. Restoring after migrations may cause issues."})})]}),(0,r.jsxs)(b.lX,{title:"Danger Zone",isOpen:el,onToggle:es,tone:"warning",className:"overflow-hidden",contentClassName:"space-y-3 p-[var(--space-md)] border-t border-[var(--color-border)]",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-warning)] leading-relaxed",children:"Permanently delete your agent, wallets, credentials, and local configuration. This action cannot be undone."}),en&&(0,r.jsx)("div",{className:"text-[10px] border px-3 py-2",style:{color:"var(--color-warning)",borderColor:"color-mix(in srgb, var(--color-warning) 30%, transparent)",background:"color-mix(in srgb, var(--color-warning) 10%, transparent)"},children:en}),(0,r.jsx)(b.$n,{type:"button",onClick:eo,disabled:ei,variant:"danger",size:"lg",className:"w-full",children:ei?"Nuking...":"Nuke"})]})]})})}var tz=a(37489),tO=a(71539),tP=a(26983),tF=a(61362),tD=a(78874),t_=a(20508),tU=a(78435),tH=a(17910),tM=a(1393);function tW(e){return e.replace(/^https?:\/\/auramaxx\.sh/,"")}function tK(e){let{src:t,isSprite:a,fallbackLetter:l,size:s="sm"}=e;return t&&a?(0,r.jsx)("div",{className:"shrink-0",style:{backgroundImage:"url('".concat(tW(t),"')"),backgroundRepeat:"no-repeat",backgroundSize:"300% 300%",backgroundPositionY:"0",imageRendering:"pixelated",animation:"yo-sprite-frames 0.9s steps(1, end) infinite",..."lg"===s?{width:"32px",height:"48px"}:"md"===s?{width:"22px",height:"33px"}:{width:"14px",height:"21px"}}}):t?(0,r.jsx)("img",{src:tW(t),alt:"",className:"".concat("lg"===s?"w-8 h-8":"md"===s?"w-6 h-6":"w-4 h-4"," shrink-0 object-cover border border-[var(--color-border,#d4d4d8)]"),style:{imageRendering:"auto"}}):(0,r.jsx)("div",{className:"".concat("lg"===s?"w-8 h-8 text-[10px]":"md"===s?"w-5 h-5 text-[8px]":"w-4 h-4 text-[7px]"," shrink-0 border border-dashed border-[var(--color-border,#d4d4d8)] flex items-center justify-center uppercase text-[var(--color-text-faint,#9ca3af)] font-mono"),children:(l||"?").slice(0,1)})}function tB(e){let{agents:t,profiles:a,selectedId:s,onSelect:n,onCreateAgent:o,direction:i="down"}=e,[c,d]=(0,l.useState)(!1),[u,x]=(0,l.useState)(""),p=(0,l.useRef)(null),f=(0,l.useRef)(null),m=t.find(e=>e.id===s),h=s?a[s]:void 0,g=(null==h?void 0:h.displayName)||(null==m?void 0:m.name)||((null==m?void 0:m.isPrimary)?"Primary":(null==s?void 0:s.slice(0,8))||"Select"),b=(null==h?void 0:h.handle)?h.handle.startsWith("@")?h.handle:"@".concat(h.handle):null;(0,l.useEffect)(()=>{if(!c)return;let e=e=>{p.current&&!p.current.contains(e.target)&&d(!1)},t=e=>{"Escape"===e.key&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[c]),(0,l.useEffect)(()=>{c&&(x(""),setTimeout(()=>{var e;return null==(e=f.current)?void 0:e.focus()},0))},[c]);let y=u.trim().length>0,j=y?t.filter(e=>{var t,r,l;let s=u.toLowerCase(),n=a[e.id];return(null==n||null==(t=n.displayName)?void 0:t.toLowerCase().includes(s))||(null==n||null==(r=n.handle)?void 0:r.toLowerCase().includes(s))||(null==(l=e.name)?void 0:l.toLowerCase().includes(s))||e.id.toLowerCase().includes(s)}):t.slice(0,10);return(0,r.jsxs)("div",{ref:p,style:{position:"relative"},children:[(0,r.jsxs)("div",{className:"w-full flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:()=>d(!c),className:"flex-1 flex items-center gap-2.5 font-mono text-left transition-all",style:{padding:"8px 10px",border:"none",background:"transparent",cursor:"pointer"},children:[(0,r.jsx)(tK,{src:null==h?void 0:h.pfp,isSprite:null==h?void 0:h.pfpIsSprite,fallbackLetter:(null==m?void 0:m.name)||"A",size:"md"}),(0,r.jsxs)("div",{style:{flex:1,minWidth:0,overflow:"hidden"},children:[(0,r.jsx)("div",{className:"text-[10px] font-bold tracking-tight text-[var(--color-text,#0a0a0a)] truncate",children:g}),b&&(0,r.jsx)("div",{className:"text-[8px] text-[var(--color-text-muted,#6b7280)] truncate",children:b})]}),(0,r.jsx)(ec.A,{size:10,className:"shrink-0 text-[var(--color-text-muted,#6b7280)]",style:{transform:c?"rotate(180deg)":void 0,transition:"transform 0.15s"}})]}),o&&(0,r.jsx)("button",{type:"button",onClick:o,className:"shrink-0 flex items-center justify-center text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",style:{background:"none",border:"none",cursor:"pointer",padding:"2px"},title:"New agent",children:(0,r.jsx)(z.A,{size:12})})]}),c&&(0,r.jsxs)("div",{className:"absolute z-50 left-0 right-0 border border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface,#ffffff)] shadow-mech font-mono",style:{maxHeight:"240px",display:"flex",flexDirection:"column",..."up"===i?{bottom:"100%",marginBottom:"4px"}:{top:"100%",marginTop:"4px"}},children:[(0,r.jsx)("div",{className:"p-1.5 border-b border-dashed border-[var(--color-border,#d4d4d8)]",children:(0,r.jsxs)("div",{className:"flex items-center gap-1.5 px-2 py-1 bg-[var(--color-bg,#fafaf9)] border border-[var(--color-border,#d4d4d8)]",children:[(0,r.jsx)(v.A,{size:10,className:"shrink-0 text-[var(--color-text-faint,#9ca3af)]"}),(0,r.jsx)("input",{ref:f,type:"text",value:u,onChange:e=>x(e.target.value),placeholder:"Search agents...",className:"flex-1 bg-transparent text-[9px] outline-none text-[var(--color-text,#0a0a0a)] placeholder-[var(--color-text-faint,#9ca3af)] font-mono"})]})}),(0,r.jsxs)("div",{className:"overflow-y-auto flex-1",style:{maxHeight:"180px"},children:[0===j.length?(0,r.jsx)("div",{className:"px-3 py-4 text-center text-[8px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)]",children:"No agents found"}):j.map(e=>{let t=a[e.id],l=e.id===s,o=(null==t?void 0:t.displayName)||e.name||(e.isPrimary?"Primary":e.id.slice(0,8)),i=(null==t?void 0:t.handle)?t.handle.startsWith("@")?t.handle:"@".concat(t.handle):null;return(0,r.jsxs)("button",{type:"button",onClick:()=>{n(e.id),d(!1)},className:"w-full flex items-center gap-2 px-2.5 py-2 text-left transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(l?"bg-[var(--color-background-alt,#f4f4f5)]":""),style:{borderLeft:l?"2px solid var(--color-accent, #6366f1)":"2px solid transparent"},children:[(0,r.jsx)(tK,{src:null==t?void 0:t.pfp,isSprite:null==t?void 0:t.pfpIsSprite,fallbackLetter:e.name||"A",size:"sm"}),(0,r.jsxs)("div",{style:{flex:1,minWidth:0,overflow:"hidden"},children:[(0,r.jsx)("div",{className:"text-[9px] font-bold tracking-tight text-[var(--color-text,#0a0a0a)] truncate",children:o}),i&&(0,r.jsx)("div",{className:"text-[7px] text-[var(--color-text-muted,#6b7280)] truncate",children:i})]})]},e.id)}),!y&&t.length>10&&(0,r.jsxs)("div",{className:"px-3 py-1.5 text-center text-[7px] uppercase tracking-widest text-[var(--color-text-faint,#9ca3af)] border-t border-dashed border-[var(--color-border,#d4d4d8)]",children:[t.length-10," more — type to search"]})]})]})]})}var t$=a(16645);function tV(e){let{isOpen:t,onClose:a,onCreated:s,primaryAgentId:n}=e,[o,i]=(0,l.useState)(""),[c,d]=(0,l.useState)(""),[u,p]=(0,l.useState)(!1),[f,m]=(0,l.useState)(!1),[v,g]=(0,l.useState)(!0),y=(0,l.useCallback)(()=>{i(""),d(""),g(!0)},[]),j=(0,l.useCallback)(()=>{a(),y()},[a,y]),w=(0,l.useCallback)(async()=>{if(o.trim()&&!(c.length<8)){p(!0);try{var e;let t=await x.FH.get(x.jI.Wallet,"/auth/connect"),a={name:o.trim(),mode:"independent",encrypted:await (0,h.X)(c,t.publicKey)},r=await x.FH.post(x.jI.Wallet,"/agents/credential",a);if(v&&n)try{await x.FH.post(x.jI.Wallet,"/credentials",{agentId:n,name:"Agent: ".concat(o.trim()),type:"login",fields:[{key:"username",value:o.trim(),type:"text",sensitive:!1},{key:"password",value:c,type:"secret",sensitive:!0}],meta:{tags:["agent-password"]}})}catch(e){console.error("[CreateAgentModal] failed to save password to vault:",e)}j(),null==s||s(null==r||null==(e=r.agent)?void 0:e.id)}catch(e){console.error("[CreateAgentModal] error:",e)}finally{p(!1)}}},[o,c,v,n,j,s]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(b.aF,{isOpen:t,onClose:j,title:"New Agent",size:"md",footer:(0,r.jsxs)("div",{className:"flex gap-2 justify-end",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:j,children:"CANCEL"}),(0,r.jsx)(b.$n,{size:"sm",onClick:w,loading:u,disabled:!o.trim()||c.length<8,children:"CREATE"})]}),children:(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)(b.ks,{label:"Agent Name",placeholder:"e.g. Work, Personal",value:o,onChange:e=>i(e.target.value),autoFocus:!0}),(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-1.5 px-1",children:[(0,r.jsx)("label",{className:"block font-mono text-[length:var(--font-size-xs)] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)]",children:"Agent Password"}),(0,r.jsxs)("button",{type:"button",onClick:()=>m(!0),className:"flex items-center gap-1 font-mono text-[8px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",style:{background:"none",border:"none",cursor:"pointer",padding:"0 2px"},children:[(0,r.jsx)(t$.A,{size:10}),"Generate"]})]}),(0,r.jsx)(b.ks,{type:"password",placeholder:"At least 8 characters",value:c,onChange:e=>d(e.target.value)})]}),n&&(0,r.jsxs)("label",{style:{display:"inline-flex",alignItems:"center",gap:"6px",cursor:"pointer"},children:[(0,r.jsx)("input",{type:"checkbox",checked:v,onChange:e=>g(e.target.checked),style:{accentColor:"var(--color-accent, #6366f1)"}}),(0,r.jsx)("span",{className:"font-mono text-[11px] text-[var(--color-text-muted,#6b7280)]",children:"Save password to vault"})]})]})}),(0,r.jsx)(eF.p,{isOpen:f,onClose:()=>m(!1),onUse:e=>{d(e),m(!1)}})]})}let tG={border:"1px solid var(--color-border, #d4d4d8)",borderRadius:"8px",padding:"12px 16px",background:"var(--color-surface, #f4f4f2)",marginBottom:"8px"},tY={fontSize:"11px",color:"var(--color-text-muted, #6b7280)"},tq={fontWeight:600,fontFamily:"var(--font-mono, monospace)",color:"var(--color-accent, #6366f1)"};function tX(e){let{credType:t,agentId:a,onComplete:s,onCancel:n}=e,[o,i]=(0,l.useState)("post"),[c,d]=(0,l.useState)(""),[u,p]=(0,l.useState)(null),[f,m]=(0,l.useState)(!1),[v,h]=(0,l.useState)(null),[g,y]=(0,l.useState)("pending"),[j,w]=(0,l.useState)(null),k=(0,l.useRef)(null),[N,S]=(0,l.useState)(null),[C,A]=(0,l.useState)(!0);(0,l.useEffect)(()=>{let e=!1;return(async()=>{try{let t=await x.FH.post(x.jI.Wallet,"/verified-credentials/sign-proof",{agentId:a});!e&&t.ok&&S(t.signature)}catch(t){if(!e){let e=t instanceof Error?t.message:"Unknown error";p("Failed to generate signature: ".concat(e))}}e||A(!1)})(),()=>{e=!0}},[a]),(0,l.useEffect)(()=>{if(!v||"polling"!==o)return;let e=async()=>{try{let t=await x.FH.get(x.jI.Wallet,"/verified-credentials/request/".concat(v));if(t.ok&&t.request){var e;y(t.request.status),w(null!=(e=t.request.statusDetail)?e:null),("verified"===t.request.status||"rejected"===t.request.status||"failed"===t.request.status)&&(k.current&&clearInterval(k.current),"verified"===t.request.status&&setTimeout(s,1500))}}catch(e){}};return e(),k.current=setInterval(e,5e3),()=>{k.current&&clearInterval(k.current)}},[v,o,s]);let E=(0,l.useCallback)(async()=>{let e=c.trim();if(!e)return;let r=e.match(/(?:x\.com|twitter\.com)\/([^/]+)\/status\//);if(!r)return void p("Invalid X post URL");let l=r[1];m(!0),p(null);try{let r=await x.FH.post(x.jI.Wallet,"/verified-credentials/request",{agentId:a,credentialTypeSlug:t.slug,claimedIdentity:l,proofUrl:e});if(r.ok&&r.request)h(r.request.requestId),i("polling");else{var s;p(null!=(s=r.error)?s:"Failed to submit verification request"),r.requestId&&(h(r.requestId),i("polling"))}}catch(e){p(e instanceof Error?e.message:"Failed to submit")}finally{m(!1)}},[a,t.slug,c]);if("post"===o||"verify"===o){let e="https://x.com/intent/tweet?text=".concat(encodeURIComponent(N?"◥◣ A U R A ◥◣\n◥◣ M A X X ◥◣\n\nVerifying via @npxauramaxx\n\n▌▌▐▌▐▐▌ ATTESTATION ▐▌▐▐▌▐▌▌\n".concat(N):""));return(0,r.jsxs)("div",{style:tG,children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,r.jsx)(I.A,{size:16,className:"text-[var(--color-accent,#6366f1)]"}),(0,r.jsxs)("span",{className:"font-mono text-sm font-semibold",children:["Verify ",t.name]})]}),(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)("p",{className:"text-[13px] mb-3 leading-relaxed text-[var(--color-text,#0a0a0a)]",children:"post"===o?"Post a signed message on X to prove you own this agent:":"Paste the link to your post:"}),C?(0,r.jsxs)("div",{className:"flex items-center gap-2 p-3",children:[(0,r.jsx)(ep.A,{size:14,className:"animate-spin text-[var(--color-text-muted,#6b7280)]"}),(0,r.jsx)("span",{className:"font-mono text-xs text-[var(--color-text-muted,#6b7280)]",children:"Generating signature..."})]}):N?null:(0,r.jsx)("div",{className:"text-xs text-[var(--color-danger,#ef4444)]",children:null!=u?u:"Failed to generate signature"})]}),"verify"===o&&(0,r.jsx)("div",{className:"mb-3",children:(0,r.jsx)(b.ks,{label:"Post Link",compact:!0,value:c,onChange:e=>d(e.target.value),placeholder:"https://x.com/username/status/..."})}),u&&"verify"===o&&(0,r.jsx)("div",{className:"mb-2 font-mono text-xs text-[var(--color-danger,#ef4444)]",children:u}),(0,r.jsxs)("div",{className:"flex gap-2",children:["post"===o?(0,r.jsx)(b.$n,{variant:"primary",size:"sm",onClick:()=>{window.open(e,"_blank","width=550,height=420,noopener,noreferrer"),i("verify")},disabled:!N,icon:(0,r.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",children:(0,r.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})}),children:"POST"}):(0,r.jsx)(b.$n,{variant:"primary",size:"sm",onClick:E,disabled:f||!c.trim(),loading:f,children:"VERIFY"}),(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:n,children:"CANCEL"})]})]})}let T=function(e){switch(e){case"pending":return{icon:tP.A,color:"#f59e0b",label:"Pending"};case"verifying":return{icon:ep.A,color:"#6366f1",label:"Verifying"};case"verified":return{icon:tF.A,color:"#22c55e",label:"Verified"};case"rejected":return{icon:tD.A,color:"#ef4444",label:"Rejected"};case"failed":return{icon:eT.A,color:"#ef4444",label:"Failed"};default:return{icon:tP.A,color:"#6b7280",label:e}}}(g),L=T.icon;return(0,r.jsxs)("div",{style:tG,children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,r.jsx)(L,{size:16,style:{color:T.color},className:"verifying"===g?"animate-spin":""}),(0,r.jsx)("span",{className:"font-mono text-sm font-semibold",children:T.label})]}),(0,r.jsxs)("p",{className:"text-[13px] text-[var(--color-text,#0a0a0a)] mb-2",children:["pending"===g&&"Your verification request is queued...","verifying"===g&&"Hub is verifying your X post...","verified"===g&&"Your X account has been verified!","rejected"===g&&"Verification rejected: ".concat(null!=j?j:"Unknown reason"),"failed"===g&&"Verification failed: ".concat(null!=j?j:"Unknown error")]}),("rejected"===g||"failed"===g)&&(0,r.jsx)(b.$n,{variant:"ghost",size:"sm",onClick:n,children:"CLOSE"})]})}let tJ=[{key:"handle",label:"Handle",placeholder:"@myhandle"},{key:"display_name",label:"Display Name",placeholder:"My Display Name"},{key:"bio",label:"Bio",placeholder:"Tell the world about yourself...",multiline:!0}],tQ=Array.from({length:10},(e,t)=>"/agent".concat(t+1,".png"));function tZ(e){let{agentId:t}=e,[a,s]=(0,l.useState)({}),[n,o]=(0,l.useState)(!1),[i,c]=(0,l.useState)(null),[d,u]=(0,l.useState)(!0);(0,l.useEffect)(()=>{let e=!1;return u(!0),(async()=>{try{var a,r,l,n,o,i;let c=await x.FH.get(x.jI.Wallet,"/social/messages?agentId=".concat(encodeURIComponent(t),"&type=user_data_add&limit=200"));if(e)return;let d={};for(let e of null!=(l=c.messages)?l:[])try{let t=JSON.parse(e.body);t.type&&(!d[t.type]||e.createdAt>d[t.type].date)&&(d[t.type]={value:null!=(n=t.value)?n:"",date:e.createdAt})}catch(e){}let u={};for(let e of tJ)u[e.key]=null!=(i=null==(o=d[e.key])?void 0:o.value)?i:"";u.pfp=(null==(a=d.pfp)?void 0:a.value)||"https://auramaxx.sh/agent7.png",u.pfp_is_sprite=(null==(r=d.pfp_is_sprite)?void 0:r.value)||(/\/agent\d+\.png$/.test(u.pfp)?"true":"false"),s(u)}catch(e){}e||u(!1)})(),()=>{e=!0}},[t]);let p=(0,l.useCallback)(async()=>{o(!0),c(null);let e=[...tJ.map(e=>e.key),"pfp","pfp_is_sprite"],r=!0;for(let s of e)try{var l;(await x.FH.post(x.jI.Wallet,"/social/profile",{agentId:t,field:s,value:null!=(l=a[s])?l:""})).success||(r=!1)}catch(e){r=!1}c(r?{ok:!0,msg:"Saved"}:{ok:!1,msg:"Some fields failed to save"}),o(!1),r&&setTimeout(()=>c(null),2500)},[t,a]);return d?(0,r.jsxs)("div",{className:"flex items-center gap-2 py-4",children:[(0,r.jsx)(ep.A,{size:14,className:"animate-spin text-[var(--color-text-muted,#6b7280)]"}),(0,r.jsx)("span",{className:"font-mono text-xs text-[var(--color-text-muted,#6b7280)]",children:"Loading profile..."})]}):(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,r.jsx)(t_.A,{size:16,className:"text-[var(--color-accent,#6366f1)]"}),(0,r.jsx)("span",{className:"font-mono text-sm font-semibold text-[var(--color-text,#0a0a0a)]",children:"Edit Profile"})]}),(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)("span",{className:"font-mono text-[length:var(--font-size-xs)] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] block mb-2",children:"Profile Image"}),(0,r.jsx)("div",{className:"flex gap-2 flex-wrap items-end",children:tQ.map((e,t)=>{let l=a.pfp==="https://auramaxx.sh".concat(e);return(0,r.jsx)("button",{type:"button",onClick:()=>s(t=>({...t,pfp:"https://auramaxx.sh".concat(e),pfp_is_sprite:"true"})),className:"rounded-lg border-2 overflow-hidden transition-all ".concat(l?"border-[var(--color-accent,#6366f1)] shadow-[0_0_0_1px_var(--color-accent,#6366f1)]":"border-transparent hover:border-[var(--color-text-muted,#6b7280)]"),style:{padding:"4px 2px"},children:(0,r.jsx)("div",{className:"yo-sprite",style:{backgroundImage:"url('".concat(e,"')"),animation:"yo-sprite-frames 0.9s steps(1, end) infinite",animationDelay:"".concat(-150*t,"ms"),width:"28px",height:"40px"}})},e)})})]}),tJ.map(e=>{var t,l;return(0,r.jsx)("div",{className:"mb-3",children:e.multiline?(0,r.jsxs)("div",{className:"flex flex-col gap-1 w-full group",children:[(0,r.jsx)("label",{className:"font-mono text-[length:var(--font-size-xs)] font-bold uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] px-[var(--space-1)]",children:e.label}),(0,r.jsx)("textarea",{value:null!=(t=a[e.key])?t:"",onChange:t=>s(a=>({...a,[e.key]:t.target.value})),placeholder:e.placeholder,rows:3,className:"w-full h-auto bg-[var(--color-background-alt,#f4f4f5)] border border-[var(--color-border,#d4d4d8)] font-mono text-[length:var(--font-size-xs)] text-[var(--color-text,#0a0a0a)] placeholder-[var(--color-text-muted,#6b7280)] px-[var(--space-3)] py-2 resize-vertical outline-none hover:border-[var(--color-border-muted,#a1a1aa)] focus:border-[var(--color-border-focus,#0a0a0a)] focus:bg-[var(--color-surface,#ffffff)] transition-all"})]}):(0,r.jsx)(b.ks,{label:e.label,compact:!0,value:null!=(l=a[e.key])?l:"",onChange:t=>s(a=>({...a,[e.key]:t.target.value})),placeholder:e.placeholder})},e.key)}),i&&(0,r.jsxs)("div",{className:"mb-2 flex items-center gap-1 font-mono text-xs ".concat(i.ok?"text-[#22c55e]":"text-[var(--color-danger,#ef4444)]"),children:[i.ok?(0,r.jsx)(tF.A,{size:10}):(0,r.jsx)(tD.A,{size:10}),i.msg]}),(0,r.jsx)(b.$n,{variant:"primary",size:"sm",onClick:p,loading:n,children:"SAVE"})]})}let t0=[{key:"credentials",label:"Credentials"},{key:"profile",label:"Profile"}];function t1(){var e;let[t,a]=(0,l.useState)([]),[s,n]=(0,l.useState)(null),[o,i]=(0,l.useState)(null),[c,d]=(0,l.useState)(!0),[u,p]=(0,l.useState)(!1),[f,m]=(0,l.useState)(null),[v,h]=(0,l.useState)("credentials"),[g,y]=(0,l.useState)(!1),[j,w]=(0,l.useState)([]),[k,N]=(0,l.useState)([]),[S,C]=(0,l.useState)([]),[A,E]=(0,l.useState)(null),[T,L]=(0,l.useState)({}),[R,O]=(0,l.useState)(!1),[P,F]=(0,l.useState)(""),[D,_]=(0,l.useState)(!1);null==o||o.auraId,null==o||o.publicKeyHex,(0,l.useEffect)(()=>{let e=!1;return(async()=>{try{let l=await x.FH.get(x.jI.Wallet,"/agents/credential");if(!e){var t,r;if(a(l.agents||[]),(null==(t=l.agents)?void 0:t.length)&&!s){let e=null!=(r=l.agents.find(e=>e.isPrimary))?r:l.agents[0];n(e.id)}}}catch(t){e||m("Failed to load agents")}finally{e||d(!1)}})(),()=>{e=!0}},[]);let U=(0,l.useCallback)(async()=>{try{let e=await x.FH.get(x.jI.Wallet,"/agents/credential");a(e.agents||[])}catch(e){}},[]);(0,l.useEffect)(()=>{if(!s)return void i(null);let e=!1;return p(!0),(async()=>{try{let t=await x.FH.get(x.jI.Wallet,"/agent-hub/".concat(encodeURIComponent(s),"/status"));e||i(t)}catch(t){e||i(null)}finally{e||p(!1)}})(),()=>{e=!0}},[s]);let H=(0,l.useMemo)(()=>t.map(e=>e.id).sort().join(","),[t]);(0,l.useEffect)(()=>{let e=!1,t=H.split(",").filter(Boolean);if(0!==t.length)return(async()=>{let a={};await Promise.allSettled(t.map(async t=>{try{var r,l,s,n,o,i;let c=await x.FH.get(x.jI.Wallet,"/social/messages?agentId=".concat(encodeURIComponent(t),"&type=user_data_add&limit=200"));if(e)return;let d={};for(let e of null!=(o=c.messages)?o:[])try{let t=JSON.parse(e.body);t.type&&(!d[t.type]||e.createdAt>d[t.type].date)&&(d[t.type]={value:null!=(i=t.value)?i:"",date:e.createdAt})}catch(e){}let u=null==(r=d.pfp)?void 0:r.value;a[t]={displayName:(null==(l=d.display_name)?void 0:l.value)||void 0,handle:(null==(s=d.handle)?void 0:s.value)||void 0,pfp:u||void 0,pfpIsSprite:(null==(n=d.pfp_is_sprite)?void 0:n.value)==="true"||!d.pfp_is_sprite&&/\/agent\d+\.png$/.test(null!=u?u:"")}}catch(e){}})),e||L(a)})(),()=>{e=!0}},[H]);let M=t.find(e=>e.id===s),W=null!=(e=null==M?void 0:M.isUnlocked)&&e;(0,l.useEffect)(()=>{if(!s||!W)return;let e=!1;return y(!0),w([]),N([]),C([]),(async()=>{let[t,a,r]=await Promise.allSettled([x.FH.get(x.jI.Wallet,"/verified-credentials/mine?agentId=".concat(encodeURIComponent(s))),x.FH.get(x.jI.Wallet,"/verified-credentials/types"),x.FH.get(x.jI.Wallet,"/verified-credentials/pending?agentId=".concat(encodeURIComponent(s)))]);if(!e){var l,n,o;"fulfilled"===t.status&&w(null!=(l=t.value.credentials)?l:[]),"fulfilled"===a.status&&N((null!=(n=a.value.types)?n:[]).filter(e=>e.enabled)),"fulfilled"===r.status&&C(null!=(o=r.value.requests)?o:[]),y(!1)}})(),()=>{e=!0}},[s,W]);let K=(0,l.useCallback)(()=>{s&&(y(!0),(async()=>{var e,t;let[a,r]=await Promise.allSettled([x.FH.get(x.jI.Wallet,"/verified-credentials/mine?agentId=".concat(encodeURIComponent(s))),x.FH.get(x.jI.Wallet,"/verified-credentials/pending?agentId=".concat(encodeURIComponent(s)))]);"fulfilled"===a.status&&w(null!=(e=a.value.credentials)?e:[]),"fulfilled"===r.status&&C(null!=(t=r.value.requests)?t:[]),y(!1)})())},[s]),B=(0,l.useMemo)(()=>t.filter(e=>!e.parentAgentId),[t]),$=(0,l.useMemo)(()=>{var e;return null==(e=t.find(e=>e.isPrimary))?void 0:e.id},[t]),V=(0,r.jsxs)("div",{children:[(0,r.jsxs)("button",{type:"button",onClick:()=>O(!0),className:"w-full flex items-center gap-2.5 px-3 py-2 text-left font-mono transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] border-b border-dashed border-[var(--color-border,#d4d4d8)]",style:{background:"none",border:"none",borderBottom:"1px dashed var(--color-border, #d4d4d8)",cursor:"pointer"},children:[(0,r.jsx)("div",{className:"w-5 h-5 shrink-0 border border-dashed border-[var(--color-border,#d4d4d8)] flex items-center justify-center",children:(0,r.jsx)(z.A,{size:10,className:"text-[var(--color-text-muted,#6b7280)]"})}),(0,r.jsx)("span",{className:"text-[9px] font-bold tracking-tight text-[var(--color-text-muted,#6b7280)] uppercase",children:"New Agent"})]}),c?(0,r.jsx)("div",{style:{display:"flex",justifyContent:"center",padding:"24px"},children:(0,r.jsx)(ep.A,{size:16,className:"animate-spin",style:{color:"var(--color-text-muted, #6b7280)"}})}):0===B.length?(0,r.jsx)("div",{style:{padding:"16px",fontSize:"12px",color:"var(--color-text-muted, #6b7280)",textAlign:"center"},children:"No agents found"}):B.map(e=>{let t=T[e.id],a=e.id===s,l=(null==t?void 0:t.displayName)||e.name||(e.isPrimary?"Primary":e.id.slice(0,8)),o=(null==t?void 0:t.handle)?t.handle.startsWith("@")?t.handle:"@".concat(t.handle):null;return(0,r.jsxs)("button",{type:"button",onClick:()=>{n(e.id),E(null)},className:"w-full flex items-center gap-2.5 px-3 py-2 text-left font-mono transition-colors hover:bg-[var(--color-background-alt,#f4f4f5)] ".concat(a?"bg-[var(--color-background-alt,#f4f4f5)]":""),style:{background:"none",border:"none",borderLeft:a?"2px solid var(--color-accent, #6366f1)":"2px solid transparent",cursor:"pointer"},children:[(0,r.jsx)(tK,{src:null==t?void 0:t.pfp,isSprite:null==t?void 0:t.pfpIsSprite,fallbackLetter:e.name||"A",size:"sm"}),(0,r.jsxs)("div",{style:{flex:1,minWidth:0,overflow:"hidden"},children:[(0,r.jsx)("div",{className:"text-[9px] font-bold tracking-tight text-[var(--color-text,#0a0a0a)] truncate",children:l}),o&&(0,r.jsx)("div",{className:"text-[7px] text-[var(--color-text-muted,#6b7280)] truncate",children:o})]})]},e.id)})]});return(0,r.jsxs)(tM._,{sidebar:V,searchValue:P,onSearchChange:F,searchPlaceholder:"Search credentials...",children:[(0,r.jsx)("div",{style:{padding:"32px"},children:M?(0,r.jsxs)("div",{style:{maxWidth:"560px"},children:[(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"10px",marginBottom:"8px"},children:[(0,r.jsx)("h2",{style:{fontSize:"18px",fontWeight:600,margin:0,color:"var(--color-text, #0a0a0a)"},children:M.name||(M.isPrimary?"Primary Agent":"Agent ".concat(M.id.slice(0,8)))}),(0,r.jsx)("span",{style:{fontSize:"10px",fontWeight:600,letterSpacing:"0.05em",textTransform:"uppercase",padding:"2px 8px",borderRadius:"4px",background:M.isPrimary?"var(--color-accent, #6366f1)":"var(--color-border, #d4d4d8)",color:M.isPrimary?"var(--color-accent-foreground, #ffffff)":"var(--color-text-muted, #6b7280)"},children:M.isPrimary?"primary":M.mode||"linked"})]}),(0,r.jsxs)("div",{style:{marginBottom:"24px"},children:[(0,r.jsx)("div",{style:{fontSize:"11px",fontWeight:500,color:"var(--color-text-muted, #6b7280)",marginBottom:"4px",letterSpacing:"0.03em"},children:"ADDRESS"}),(0,r.jsx)("code",{style:{fontSize:"11px",fontFamily:"var(--font-mono, monospace)",color:"var(--color-text, #0a0a0a)",background:"var(--color-surface, #f4f4f2)",padding:"6px 10px",borderRadius:"6px",display:"block",wordBreak:"break-all",border:"1px solid var(--color-border, #d4d4d8)"},children:M.address})]}),!W&&(0,r.jsx)("div",{style:{...tG,borderColor:"#f59e0b"},children:(0,r.jsxs)("div",{style:{fontSize:"12px",color:"#f59e0b",display:"flex",alignItems:"center",gap:"6px"},children:[(0,r.jsx)(eT.A,{size:14}),"Unlock this agent to verify credentials."]})}),W&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{style:{display:"flex",gap:"0",borderBottom:"1px solid var(--color-border, #d4d4d8)",marginBottom:"16px"},children:t0.map(e=>{let t=v===e.key;return(0,r.jsx)("button",{onClick:()=>{h(e.key),E(null)},style:{padding:"8px 16px",fontSize:"12px",fontWeight:500,border:"none",background:"none",color:t?"var(--color-accent, #6366f1)":"var(--color-text-muted, #6b7280)",borderBottom:t?"2px solid var(--color-accent, #6366f1)":"2px solid transparent",cursor:"pointer",transition:"all 0.15s ease",marginBottom:"-1px"},children:e.label},e.key)})}),g&&(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginBottom:"16px"},children:[(0,r.jsx)(ep.A,{size:14,className:"animate-spin",style:{color:"var(--color-text-muted, #6b7280)"}}),(0,r.jsx)("span",{style:tY,children:"Loading credentials..."})]}),A&&(0,r.jsx)(tX,{credType:A,agentId:s,onComplete:()=>{E(null),h("credentials"),K()},onCancel:()=>E(null)}),"credentials"===v&&!g&&!A&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("label",{style:{display:"inline-flex",alignItems:"center",gap:"6px",marginBottom:"12px",cursor:"pointer"},children:[(0,r.jsx)("input",{type:"checkbox",checked:D,onChange:e=>_(e.target.checked),style:{accentColor:"var(--color-accent, #6366f1)"}}),(0,r.jsx)("span",{className:"font-mono text-[11px] text-[var(--color-text-muted,#6b7280)]",children:"Approved only"})]}),0===k.length?(0,r.jsx)("div",{style:{...tY,textAlign:"center",marginTop:"32px"},children:"No credential types available"}):(()=>{let e=P.trim().toLowerCase(),t=k.filter(t=>{var a;return(!e||!!t.name.toLowerCase().includes(e)||!!(null==(a=t.description)?void 0:a.toLowerCase().includes(e))||!!t.slug.toLowerCase().includes(e))&&(!D||!!j.find(e=>e.credentialType===t.slug||e.credentialType==="".concat(t.slug,"_account")))&&!0});return 0===t.length?(0,r.jsx)("div",{style:{...tY,textAlign:"center",marginTop:"32px"},children:"No credentials found"}):(0,r.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(240px, 1fr))",gap:"8px"},children:t.map(e=>{let t=j.find(t=>t.credentialType===e.slug||t.credentialType==="".concat(e.slug,"_account")),a=S.find(t=>t.credentialType===e.slug&&("pending"===t.status||"verifying"===t.status));return(0,r.jsxs)("div",{style:tG,children:[(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginBottom:"8px"},children:[t?(0,r.jsx)(tU.A,{size:16,style:{color:"#22c55e",flexShrink:0}}):a?(0,r.jsx)(tP.A,{size:16,style:{color:"#f59e0b",flexShrink:0}}):(0,r.jsx)(tH.A,{size:16,style:{color:"var(--color-text-muted, #6b7280)",flexShrink:0}}),(0,r.jsx)("span",{style:{fontSize:"14px",fontWeight:600,color:"var(--color-text, #0a0a0a)"},children:e.name})]}),e.description&&(0,r.jsx)("div",{style:{...tY,marginBottom:"10px"},children:e.description}),t?(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",disabled:!0,children:"APPROVED"}),(0,r.jsx)("span",{style:{...tq,fontSize:"12px"},children:"x"===e.slug?"@".concat(t.claimedIdentity):t.claimedIdentity})]}):a?(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",disabled:!0,children:"PENDING"}):(0,r.jsx)(b.$n,{variant:"primary",size:"sm",onClick:()=>E(e),icon:(0,r.jsx)(I.A,{size:11}),children:"VERIFY"})]},e.slug)})})})()]}),"profile"===v&&(0,r.jsx)(tZ,{agentId:s})]})]}):(0,r.jsx)("div",{style:{color:"var(--color-text-muted, #6b7280)",fontSize:"13px"},children:"Select an agent to view details"})}),(0,r.jsx)(tV,{isOpen:R,onClose:()=>O(!1),onCreated:e=>{U(),e&&n(e)},primaryAgentId:$})]})}var t4=a(73633),t2=a(91169),t8=a(96583),t6=a(80534),t3=a(83457),t5=a(18085);async function t9(){return(await x.FH.get(x.jI.Wallet,"/agents/credential")).agents||[]}async function t7(e,t){var a;let r={limit:50};e&&(r.cursor=e),t&&(r.hubUrl=t);let l=await x.FH.get(x.jI.Wallet,"/social/global-feed",r);return{items:l.items||[],nextCursor:null!=(a=l.nextCursor)?a:null}}async function ae(e,t){let a={agentId:e,type:"post_add",limit:50};t&&(a.hubUrl=t);let[r,l]=await Promise.all([x.FH.get(x.jI.Wallet,"/social/feed",a),at(e,t)]),s=new Map;for(let e of r.messages||[])s.set(e.hash,e);for(let e of l)s.has(e.hash)||s.set(e.hash,{id:e.id,agentId:e.agentId,hash:e.hash,authorAuraId:0,type:e.type,body:e.body,timestamp:e.timestamp});return Array.from(s.values()).sort((e,t)=>t.timestamp-e.timestamp)}async function at(e,t){let a={agentId:e,type:"post_add",limit:200};t&&(a.hubUrl=t);let r={agentId:e,type:"post_remove",limit:200};t&&(r.hubUrl=t);let[l,s]=await Promise.all([x.FH.get(x.jI.Wallet,"/social/messages",a),x.FH.get(x.jI.Wallet,"/social/messages",r)]),n=l.messages||[],o=s.messages||[];if(0===o.length)return n;let i=new Set;for(let e of o){var c;if("failed"===(c=e.syncStatus)||"rejected"===c)continue;let t=function(e){var t,a;let r=function(e){try{return JSON.parse(e)}catch(e){return{}}}(e.body),l=null!=(a=null!=(t=r.targetPostHash)?t:r.postHash)?a:r.targetHash;return"string"!=typeof l?null:l.trim()||null}(e);t&&i.add(t)}return 0===i.size?n:n.filter(e=>!i.has(e.hash))}async function aa(e,t){let a={agentId:e};return t&&(a.hubUrl=t),(await x.FH.get(x.jI.Wallet,"/social/followers",a)).followers||[]}async function ar(e,t){let a={agentId:e};return t&&(a.hubUrl=t),(await x.FH.get(x.jI.Wallet,"/social/following",a)).following||[]}async function al(e,t){let a={agentId:e};return t&&(a.hubUrl=t),(await x.FH.get(x.jI.Wallet,"/social/status",a)).status||null}async function as(e){return function(e){var t,a,r,l,s;let n={};for(let t of e)try{let e=JSON.parse(t.body);if(!e.type)continue;let a=t.createdAt?Date.parse(t.createdAt):"number"==typeof t.timestamp?1e3*t.timestamp:0,r=n[e.type];(!r||a>=r.rank)&&(n[e.type]={value:null!=(s=e.value)?s:"",rank:a})}catch(e){}let o=(null==(t=n.pfp)?void 0:t.value)||"https://auramaxx.sh/agent7.png";return{pfp:o,handle:(null==(a=n.handle)?void 0:a.value)||"",displayName:(null==(r=n.display_name)?void 0:r.value)||"",pfpIsSprite:(null==(l=n.pfp_is_sprite)?void 0:l.value)==="true"||!n.pfp_is_sprite&&/\/agent\d+\.png$/.test(o)}}((await x.FH.get(x.jI.Wallet,"/social/messages",{agentId:e,type:"user_data_add",limit:200})).messages||[])}async function an(e,t,a){let r={agentId:e,targetPostHash:t};a&&(r.hubUrl=a),await x.FH.post(x.jI.Wallet,"/social/post/remove",r)}async function ao(e,t,a){let r={agentId:e,postHash:t,reactionType:"like"};a&&(r.hubUrl=a),await x.FH.post(x.jI.Wallet,"/social/react",r)}async function ai(){let e=await x.FH.get(x.jI.Wallet,"/agent-hub/default");return"string"==typeof e.hubUrl?e.hubUrl.trim():""}async function ac(e){return(await x.FH.get(x.jI.Wallet,"/agent-hub/".concat(e,"/hubs"))).hubs||[]}async function ad(e,t,a){let r={hubUrl:t};return a&&(r.label=a),(await x.FH.post(x.jI.Wallet,"/agent-hub/".concat(e,"/join"),r)).hub}async function au(e,t){await x.FH.post(x.jI.Wallet,"/agent-hub/".concat(e,"/leave"),{hubUrl:t})}function ax(e){let t=new Date(1e3*e),a=Date.now()-t.getTime();return a<6e4?"just now":a<36e5?"".concat(Math.floor(a/6e4),"m ago"):a<864e5?"".concat(Math.floor(a/36e5),"h ago"):t.toLocaleDateString()}function ap(e){try{return JSON.parse(e)}catch(e){return{}}}let af="https://auramaxx.sh/agent7.png",am={border:"1px solid var(--color-border, #d4d4d8)",borderRadius:0,padding:"14px 16px",background:"var(--color-surface, #ffffff)",borderBottom:"none"},av={fontSize:"10px",color:"var(--color-text-muted, #6b7280)",fontFamily:"var(--font-mono, monospace)",letterSpacing:"0.02em"},ah={fontWeight:600,fontFamily:"var(--font-mono, monospace)",color:"var(--color-text, #0a0a0a)"},ag=[{key:"discover",label:"Global",icon:w.A},{key:"feed",label:"For You",icon:t4.A},{key:"posts",label:"My Posts",icon:N.A},{key:"followers",label:"Followers",icon:t2.A},{key:"following",label:"Following",icon:t8.A},{key:"status",label:"Sync Status",icon:t6.A}];function ab(e){let{tab:t,isActive:a,onClick:l,badge:s}=e,n=t.icon;return(0,r.jsxs)("button",{onClick:l,style:{width:"100%",padding:"8px 12px",borderRadius:"8px",border:"none",background:a?"var(--color-accent, #6366f1)":"transparent",color:a?"var(--color-accent-foreground, #ffffff)":"var(--color-text, #0a0a0a)",cursor:"pointer",display:"flex",alignItems:"center",gap:"8px",fontSize:"12px",textAlign:"left",transition:"all 0.1s ease",marginBottom:"2px"},children:[(0,r.jsx)(n,{size:14}),(0,r.jsx)("span",{style:{fontWeight:500,flex:1},children:t.label}),null!=s&&s>0&&(0,r.jsx)("span",{style:{minWidth:"16px",height:"16px",padding:"0 4px",borderRadius:"8px",background:a?"rgba(255,255,255,0.3)":"var(--color-accent, #6366f1)",color:a?"#fff":"var(--color-accent-foreground, #ffffff)",fontSize:"10px",fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",fontFamily:"var(--font-mono, monospace)"},children:s>99?"99+":s})]})}function ay(e){let{authorLabel:t,authorDisplayName:a,authorHandle:s,authorPfp:n,authorPfpIsSprite:o,text:i,timestamp:c,hash:d,hubUrl:u,syncStatus:x,isOwn:p,agentId:f,onDeleted:m,onLiked:v}=e,[h,g]=(0,l.useState)(!1),[b,y]=(0,l.useState)(!1),j=(0,l.useCallback)(async()=>{if(!h){g(!0);try{await an(f,d,u),null==m||m(d)}catch(e){}finally{g(!1)}}},[f,d,u,h,m]),w=(0,l.useCallback)(async()=>{if(!b){y(!0);try{await ao(f,d,u),null==v||v()}catch(e){}finally{y(!1)}}},[f,d,u,b,v]);return(0,r.jsxs)("div",{style:am,children:[(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"10px",marginBottom:"10px"},children:[(0,r.jsx)(tK,{src:n,isSprite:o,fallbackLetter:"#"===t[0]?t[1]:t[0],size:"md"}),(0,r.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,r.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:"6px"},children:[(0,r.jsx)("span",{style:{...ah,fontSize:"12px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a||s||t}),s&&a&&(0,r.jsxs)("span",{style:{...av,fontSize:"10px"},children:["@",s]}),!a&&!s&&(0,r.jsx)("span",{style:{...av,fontSize:"10px"},children:t})]}),(0,r.jsx)("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:(0,r.jsx)("span",{style:{...av,fontSize:"9px"},children:ax(c)})})]}),x&&(0,r.jsx)("span",{style:{...av,fontSize:"9px",padding:"2px 6px",border:"1px solid",borderColor:"accepted"===x?"#166534":"pending"===x?"#92400e":"#991b1b",color:"accepted"===x?"#166534":"pending"===x?"#92400e":"#991b1b",textTransform:"uppercase"},children:x})]}),(0,r.jsx)("div",{style:{fontSize:"13px",color:"var(--color-text, #0a0a0a)",lineHeight:1.6,whiteSpace:"pre-wrap",paddingLeft:"32px"},children:i}),(0,r.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"4px",marginTop:"10px",paddingLeft:"32px"},children:[!p&&(0,r.jsxs)("button",{onClick:w,disabled:b,style:{padding:"2px 8px",fontSize:"9px",fontFamily:"var(--font-mono, monospace)",textTransform:"uppercase",letterSpacing:"0.05em",borderRadius:0,border:"1px solid var(--color-border, #d4d4d8)",background:"transparent",color:"var(--color-text-muted, #6b7280)",cursor:b?"not-allowed":"pointer",display:"flex",alignItems:"center",gap:"4px",transition:"border-color 0.1s"},children:[(0,r.jsx)(t3.A,{size:9}),b?"...":"Like"]}),p&&(0,r.jsxs)("button",{onClick:j,disabled:h,style:{padding:"2px 8px",fontSize:"9px",fontFamily:"var(--font-mono, monospace)",textTransform:"uppercase",letterSpacing:"0.05em",borderRadius:0,border:"1px solid var(--color-border, #d4d4d8)",background:"transparent",color:"#ef4444",cursor:h?"not-allowed":"pointer",display:"flex",alignItems:"center",gap:"4px"},children:[(0,r.jsx)(T.A,{size:9}),h?"...":"Delete"]})]})]})}function aj(e){let{activeHubUrl:t}=e,[a,s]=(0,l.useState)("feed"),[n,o]=(0,l.useState)([]),[i,c]=(0,l.useState)(""),[d,u]=(0,l.useState)(""),[p,f]=(0,l.useState)({}),[m,v]=(0,l.useState)(!0),[h,g]=(0,l.useState)(null),[y,j]=(0,l.useState)(!1),[w,k]=(0,l.useState)(!1),[N,S]=(0,l.useState)(""),[C,A]=(0,l.useState)(null),[I,E]=(0,l.useState)(!1),[T,L]=(0,l.useState)([]),[R,z]=(0,l.useState)([]),[O,P]=(0,l.useState)(!1),[F,D]=(0,l.useState)([]),[_,U]=(0,l.useState)([]),[H,M]=(0,l.useState)([]),[W,K]=(0,l.useState)(null),[B,$]=(0,l.useState)(!1),[V,G]=(0,l.useState)(0),Y=(0,l.useCallback)(()=>G(e=>e+1),[]),[q,X]=(0,l.useState)(""),J=d||t;(0,l.useEffect)(()=>{let e=!1;return(async()=>{try{let t=await ai();e||u(t)}catch(t){e||u("")}})(),()=>{e=!0}},[]);let Q=(0,l.useMemo)(()=>{if(!q.trim())return T;let e=q.toLowerCase();return T.filter(t=>{var a;return(null==(a=ap(t.body).text)?void 0:a.toLowerCase().includes(e))||String(t.authorAuraId).includes(e)})},[T,q]),Z=(0,l.useMemo)(()=>{if(!q.trim())return F;let e=q.toLowerCase();return F.filter(t=>{var a;return null==(a=ap(t.body).text)?void 0:a.toLowerCase().includes(e)})},[F,q]),ee=(0,l.useMemo)(()=>{if(!q.trim())return R;let e=q.toLowerCase();return R.filter(t=>{var a;return(null==(a=t.text)?void 0:a.toLowerCase().includes(e))||String(t.authorAuraId).includes(e)})},[R,q]),et=(0,l.useMemo)(()=>{if(!q.trim())return _;let e=q.toLowerCase();return _.filter(t=>String(t.authorAuraId).includes(e))},[_,q]),ea=(0,l.useMemo)(()=>{if(!q.trim())return H;let e=q.toLowerCase();return H.filter(t=>String(t.auraId).includes(e))},[H,q]);(0,l.useEffect)(()=>{let e=!1;return(async()=>{try{let r=await t9();if(e)return;if(o(r),r.length>0){var t,a;let e=null!=(a=null==(t=r.find(e=>e.isPrimary))?void 0:t.id)?a:r[0].id;c(e)}}catch(t){e||g("Failed to load agents")}finally{e||v(!1)}})(),()=>{e=!0}},[]);let er=(0,l.useCallback)(async()=>{try{let e=await t9();if(o(e),0===e.length)return;c(t=>{var a,r;return t&&e.some(e=>e.id===t)?t:null!=(r=null==(a=e.find(e=>e.isPrimary))?void 0:a.id)?r:e[0].id})}catch(e){}},[]);(0,l.useEffect)(()=>{if(!i)return;let e=!1;return $(!0),(async()=>{try{switch(a){case"feed":{let t=await ae(i,J);e||L(t);break}case"posts":{let t=await at(i,J);e||D(t);break}case"followers":{let t=await aa(i,J);e||U(t);break}case"following":{let t=await ar(i,J);e||M(t);break}case"status":{let t=await al(i,J);e||K(t)}}}catch(e){}finally{e||$(!1)}})(),()=>{e=!0}},[i,a,V,J]),(0,l.useEffect)(()=>{if("discover"!==a)return;let e=!1;return P(!0),(async()=>{try{let t=await t7(void 0,J);e||z(t.items)}catch(e){}finally{e||P(!1)}})(),()=>{e=!0}},[a,V,J]),(0,l.useEffect)(()=>{if(!i||p[i])return;let e=!1;return(async()=>{try{let t=await as(i);if(e)return;f(e=>({...e,[i]:t}))}catch(t){if(e)return;f(e=>e[i]?e:{...e,[i]:{pfp:af,handle:"",displayName:""}})}})(),()=>{e=!0}},[i,p]);let el=(0,l.useCallback)(async e=>{if(!i)return;let{localMessage:t,submit:a}=function(e,t,a){let r=t.trim();if(!r)throw Error("text is required and must be a non-empty string");let l=function(e,t){let a=Date.now(),r=new Date(a).toISOString(),l="local:".concat(e,":").concat(a,":").concat(Math.random().toString(16).slice(2,8));return{id:l,agentId:e,hash:l,type:"post_add",body:JSON.stringify({text:t}),timestamp:Math.floor(a/1e3),syncStatus:"pending",createdAt:r}}(e,r),s={agentId:e,text:r};return a&&(s.hubUrl=a),{localMessage:l,submit:x.FH.post(x.jI.Wallet,"/social/post",s).then(e=>e.message)}}(i,e,J);D(e=>[t,...e.filter(e=>e.id!==t.id)]);try{let e=await a;D(a=>[e,...a.filter(a=>a.id!==t.id&&a.id!==e.id)]),Y()}catch(e){throw D(e=>e.map(e=>e.id===t.id?{...e,syncStatus:"failed"}:e)),e}},[i,Y,J]),es=(0,l.useCallback)(()=>{I||(k(!1),A(null))},[I]),en=(0,l.useCallback)(async()=>{let e=N.trim();if(e&&!I){E(!0),A(null);try{await el(e),S(""),k(!1),s("posts")}catch(e){A(e instanceof Error?e.message:"Post failed")}finally{E(!1)}}},[el,N,I]),eo=(0,l.useMemo)(()=>n.filter(e=>!e.parentAgentId),[n]),ei=(0,l.useMemo)(()=>{var e;return null==(e=n.find(e=>e.isPrimary))?void 0:e.id},[n]);if(m)return(0,r.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:(0,r.jsx)(ep.A,{size:20,className:"animate-spin",style:{color:"var(--color-text-muted, #6b7280)"}})});let ec=(0,r.jsxs)("div",{style:{padding:"8px"},children:[(0,r.jsx)(b.$n,{variant:"primary",size:"sm",icon:(0,r.jsx)(t5.A,{size:12}),disabled:!i,onClick:()=>{A(null),k(!0)},className:"w-full mb-2",children:"NEW POST"}),ag.map(e=>(0,r.jsx)(ab,{tab:e,isActive:e.key===a,onClick:()=>s(e.key),badge:void 0},e.key))]}),ed=(0,r.jsx)("div",{style:{background:"var(--color-background-alt, #f4f4f5)"},children:(0,r.jsx)(tB,{agents:eo,profiles:p,selectedId:i||null,onSelect:c,onCreateAgent:()=>j(!0),direction:"up"})}),eu=i?p[i]:void 0,ex=(0,r.jsx)("div",{style:{padding:"24px 32px"},children:(0,r.jsxs)("div",{style:{maxWidth:"600px",border:"1px solid var(--color-border, #d4d4d8)",borderBottom:"none"},children:[h&&(0,r.jsx)("div",{style:{...am,color:"#ef4444",fontSize:"12px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:h}),B||O?(0,r.jsx)("div",{style:{display:"flex",justifyContent:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:(0,r.jsx)(ep.A,{size:16,className:"animate-spin",style:{color:"var(--color-text-muted, #6b7280)"}})}):(0,r.jsxs)(r.Fragment,{children:["discover"===a&&(0===ee.length?(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"No posts to discover yet."}):ee.map(e=>{var t;let a=e.authorProfile,l=(null==a?void 0:a.pfp)||af;return(0,r.jsx)(ay,{authorLabel:"#".concat(e.authorAuraId),authorDisplayName:(null==a?void 0:a.displayName)||void 0,authorHandle:(null==a?void 0:a.handle)||void 0,authorPfp:l,authorPfpIsSprite:null!=(t=null==a?void 0:a.pfpIsSprite)?t:/\/agent\d+\.png$/.test(l),text:e.text||"",timestamp:e.updatedTs,hash:e.postHash,hubUrl:J,isOwn:!1,agentId:i,onLiked:i?Y:void 0},e.postHash)})),"feed"===a&&(0===Q.length?(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"No posts in your feed yet. Follow some agents to see their posts here."}):Q.map(e=>{var t;let a=ap(e.body),l=e.authorAuraId<=0;return(0,r.jsx)(ay,{authorLabel:l?"You":"#".concat(e.authorAuraId),authorDisplayName:l?null==eu?void 0:eu.displayName:void 0,authorHandle:l?null==eu?void 0:eu.handle:void 0,authorPfp:l?(null==eu?void 0:eu.pfp)||af:void 0,authorPfpIsSprite:l?null!=(t=null==eu?void 0:eu.pfpIsSprite)?t:/\/agent\d+\.png$/.test((null==eu?void 0:eu.pfp)||af):void 0,text:a.text||"",timestamp:e.timestamp,hash:e.hash,hubUrl:J,isOwn:l,agentId:i,onLiked:Y},e.id)})),"posts"===a&&(0===Z.length?(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"No posts yet. Write your first post above."}):Z.map(e=>{var t;let a=ap(e.body);return(0,r.jsx)(ay,{authorLabel:"You",authorDisplayName:null==eu?void 0:eu.displayName,authorHandle:null==eu?void 0:eu.handle,authorPfp:(null==eu?void 0:eu.pfp)||af,authorPfpIsSprite:null!=(t=null==eu?void 0:eu.pfpIsSprite)?t:/\/agent\d+\.png$/.test((null==eu?void 0:eu.pfp)||af),text:a.text||"",timestamp:e.timestamp,hash:e.hash,hubUrl:J,syncStatus:e.syncStatus,isOwn:!0,agentId:i,onDeleted:e=>{D(t=>t.filter(t=>t.hash!==e)),Y()}},e.id)})),"followers"===a&&(0===et.length?(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"No followers yet."}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{style:{...av,padding:"8px 16px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:[et.length," follower",1!==et.length?"s":""]}),et.map(e=>(0,r.jsxs)("div",{style:{...am,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,r.jsxs)("span",{style:{...ah,fontSize:"12px"},children:["#",e.authorAuraId]}),(0,r.jsx)("span",{style:av,children:ax(e.timestamp)})]},e.id))]})),"following"===a&&(0===ea.length?(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"Not following anyone yet."}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{style:{...av,padding:"8px 16px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:["Following ",ea.length," agent",1!==ea.length?"s":""]}),ea.map(e=>(0,r.jsxs)("div",{style:{...am,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,r.jsxs)("span",{style:{...ah,fontSize:"12px"},children:["#",e.auraId]}),(0,r.jsx)("span",{style:av,children:ax(e.timestamp)})]},e.auraId))]})),"status"===a&&(W?(0,r.jsxs)("div",{style:{...am,borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:[(0,r.jsx)("div",{style:{fontSize:"10px",fontWeight:600,marginBottom:"12px",fontFamily:"var(--font-mono, monospace)",textTransform:"uppercase",letterSpacing:"0.05em",color:"var(--color-text-muted, #6b7280)"},children:"Sync Status"}),(0,r.jsx)("table",{style:{width:"100%",fontSize:"12px",borderCollapse:"collapse"},children:(0,r.jsx)("tbody",{children:Object.entries(W).map(e=>{let[t,a]=e;return(0,r.jsxs)("tr",{style:{borderTop:"1px solid var(--color-border, #d4d4d8)"},children:[(0,r.jsx)("td",{style:{padding:"6px 0",fontFamily:"var(--font-mono, monospace)",fontSize:"11px",color:"var(--color-text-muted, #6b7280)",textTransform:"uppercase",letterSpacing:"0.03em"},children:t}),(0,r.jsx)("td",{style:{padding:"6px 0",textAlign:"right",fontFamily:"var(--font-mono, monospace)",fontWeight:600,fontSize:"11px"},children:a})]},t)})})})]}):(0,r.jsx)("div",{style:{...av,textAlign:"center",padding:"32px",borderBottom:"1px solid var(--color-border, #d4d4d8)"},children:"No sync data available."}))]})]})});return(0,r.jsxs)(tM._,{sidebar:ec,sidebarFooter:ed,searchValue:q,onSearchChange:X,searchPlaceholder:"Search posts, followers...",contentClassName:"scrollbar-tyvek",children:[ex,(0,r.jsx)(b.aF,{isOpen:w,onClose:es,title:"Create Post",size:"sm",footer:(0,r.jsxs)("div",{className:"flex gap-2 justify-end",children:[(0,r.jsx)(b.$n,{variant:"secondary",size:"sm",onClick:es,disabled:I,children:"CANCEL"}),(0,r.jsx)(b.$n,{size:"sm",loading:I,disabled:!N.trim(),icon:(0,r.jsx)(t5.A,{size:12}),onClick:en,children:"POST"})]}),children:(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)(b.No,{label:"Post",placeholder:"What's happening?",value:N,onChange:e=>S(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),en())},hint:"Cmd/Ctrl+Enter to post",autoFocus:!0}),(0,r.jsx)("div",{style:{...av,fontSize:"10px"},children:N.length>0?"".concat(N.length," chars"):"Click Post to publish"}),C&&(0,r.jsx)("div",{style:{fontSize:"11px",color:"#ef4444"},children:C})]})}),(0,r.jsx)(tV,{isOpen:y,onClose:()=>j(!1),onCreated:e=>{er(),e&&c(e)},primaryAgentId:ei})]})}function aw(e){let{hub:t,hasHubs:a,onAddHub:l}=e;if(!t)return(0,r.jsxs)("div",{className:"h-full flex flex-col items-center justify-center gap-4",children:[(0,r.jsx)("p",{className:"label-specimen text-[var(--color-text-muted,#6b7280)]",children:a?"Select a hub from the sidebar":"No hubs yet"}),!a&&l&&(0,r.jsx)("button",{onClick:l,className:"px-4 py-2 text-xs font-mono tracking-widest font-bold bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] hover:opacity-90 transition-opacity",children:"ADD HUB"})]});let s=t.frontendUrl;return s?(0,r.jsx)("iframe",{src:s,title:t.label||t.hubUrl,className:"w-full h-full border-0",sandbox:"allow-scripts allow-same-origin allow-forms allow-popups",allow:"clipboard-read; clipboard-write"}):(0,r.jsxs)("div",{className:"h-full flex flex-col items-center justify-center gap-3",children:[(0,r.jsx)("p",{className:"label-specimen text-[var(--color-text-muted,#6b7280)]",children:t.label||t.hubUrl}),(0,r.jsx)("p",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"This hub does not expose a frontend URL."})]})}let ak="https://auramaxx.sh/agent7.png",aN=Array.from({length:10},(e,t)=>"/agent".concat(t+1,".png"));function aS(e){return e.trim().replace(/^@+/,"").replace(/\s+/g,"")}function aC(e){let{children:t}=e,[a,s]=(0,l.useState)(!0),[n,o]=(0,l.useState)(""),[i,c]=(0,l.useState)(!1),[d,u]=(0,l.useState)(null),[p,f]=(0,l.useState)(null),[m,v]=(0,l.useState)(!1),[h,g]=(0,l.useState)(ak),[y,j]=(0,l.useState)(""),[w,k]=(0,l.useState)(""),N=(0,l.useCallback)(async()=>{s(!0),u(null);try{var e,t;let a=(await x.FH.get(x.jI.Wallet,"/agents/credential")).agents||[],r=null!=(t=null!=(e=a.find(e=>e.isPrimary&&!e.parentAgentId))?e:a.find(e=>e.isPrimary))?t:a[0];if(!(null==r?void 0:r.id))throw Error("Primary agent not found");o(r.id);let[l,s]=await Promise.allSettled([x.FH.get(x.jI.Wallet,"/agent-hub/".concat(encodeURIComponent(r.id),"/status")),as(r.id)]);"fulfilled"===l.status?c(!0===l.value.registered):c(!1);let n="fulfilled"===s.status?s.value:{pfp:ak,handle:"",displayName:""};g(function(e){let t=(e||"").trim();return/\/agent\d+\.png$/.test(t)?t.startsWith("http")?t:"https://auramaxx.sh".concat(t):ak}(n.pfp)),j(aS(n.handle||"")),k((n.displayName||"").trim())}catch(e){c(!1),u(e instanceof Error?e.message:"Failed to load primary hub registration status")}finally{s(!1)}},[]);(0,l.useEffect)(()=>{N()},[N]);let S=(0,l.useMemo)(()=>!!(n&&aS(y)&&w.trim()),[n,y,w]),C=(0,l.useCallback)(async()=>{if(!n||m)return;let e=aS(y),t=w.trim();if(!e||!t)return void f("Username and display name are required.");v(!0),f(null);try{for(let a of(await x.FH.post(x.jI.Wallet,"/agent-hub/".concat(encodeURIComponent(n),"/register"),{}),[{field:"handle",value:e},{field:"display_name",value:t},{field:"pfp",value:h},{field:"pfp_is_sprite",value:"true"}]))await x.FH.post(x.jI.Wallet,"/social/profile",{agentId:n,field:a.field,value:a.value});await N()}catch(e){f(e instanceof Error?e.message:"Failed to register on primary hub")}finally{v(!1)}},[n,w,y,N,m,h]);return a?(0,r.jsx)("div",{className:"h-full w-full flex items-center justify-center",children:(0,r.jsx)(ep.A,{size:18,className:"animate-spin text-[var(--color-text-muted,#6b7280)]"})}):i?(0,r.jsx)(r.Fragment,{children:t}):(0,r.jsx)("div",{className:"h-full w-full flex items-center justify-center p-6 bg-[var(--color-background,#f4f4f5)]",children:(0,r.jsxs)("div",{className:"w-full max-w-[440px] bg-[var(--color-surface,#f4f4f2)] clip-specimen border-mech shadow-mech overflow-hidden font-mono",children:[(0,r.jsxs)("div",{className:"px-5 py-3 border-b border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface-alt,#fafafa)] flex items-center justify-between",children:[(0,r.jsx)("span",{className:"font-sans font-bold text-sm text-[var(--color-text,#0a0a0a)] uppercase tracking-tight",children:"Register Agent"}),(0,r.jsxs)("span",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)] font-bold tracking-widest uppercase inline-flex items-center gap-1",children:[(0,r.jsx)(R.A,{size:10}),"Locked"]})]}),(0,r.jsxs)("div",{className:"p-5 space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)(tK,{src:h,isSprite:!0,fallbackLetter:"A",size:"lg"}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[12px] font-semibold text-[var(--color-text,#0a0a0a)]",children:"Register your primary agent"}),(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)]",children:"Credentials and Social use the primary hub from Settings."})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[9px] uppercase tracking-widest text-[var(--color-text-muted,#6b7280)] mb-2",children:"Profile Image"}),(0,r.jsx)("div",{className:"grid grid-cols-5 gap-2",children:aN.map((e,t)=>{let a="https://auramaxx.sh".concat(e),l=h===a;return(0,r.jsx)("button",{type:"button",onClick:()=>g(a),className:"rounded border transition-colors ".concat(l?"border-[var(--color-accent,#6366f1)]":"border-[var(--color-border,#d4d4d8)] hover:border-[var(--color-text-muted,#6b7280)]"),style:{padding:"4px 2px"},children:(0,r.jsx)("div",{className:"yo-sprite",style:{backgroundImage:"url('".concat(e,"')"),animation:"yo-sprite-frames 0.9s steps(1, end) infinite",animationDelay:"".concat(-150*t,"ms"),width:"28px",height:"40px",margin:"0 auto"}})},e)})})]}),(0,r.jsx)(b.ks,{label:"Username",compact:!0,placeholder:"@myhandle",value:y,onChange:e=>{j(e.target.value),f(null)},leftElement:(0,r.jsx)(t_.A,{size:12})}),(0,r.jsx)(b.ks,{label:"Display Name",compact:!0,placeholder:"My Display Name",value:w,onChange:e=>{k(e.target.value),f(null)}}),(d||p)&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20",children:p||d}),(0,r.jsx)(b.$n,{variant:"primary",size:"sm",className:"w-full",onClick:()=>{C()},loading:m,disabled:!S,children:"REGISTER AGENT"})]})]})})}var aA=a(44265),aI=a(13361),aE=a(65229),aT=a(18824);let aL="aura:update-banner:dismissed";function aR(){let{updateAvailable:e,current:t,latest:a,updating:s,updateInProgress:n,updateError:o,updateOutput:i,runUpdate:c,apiServerDown:d,restartingServer:u,restartError:x,runRestart:p}=(0,aT.e)(),[f,m]=(0,l.useState)(null),v=(0,l.useMemo)(()=>d||x?null:i&&!e?"update-success:".concat(a||"unknown"):e||o?"update-available:".concat(t||"unknown",":").concat(a||"unknown"):null,[d,x,i,e,a,t,o]);(0,l.useEffect)(()=>{m(window.localStorage.getItem(aL))},[]);let h=(0,l.useCallback)(()=>{v&&(window.localStorage.setItem(aL,v),m(v))},[v]),g=!!(v&&f===v);if(!d&&!x&&!e&&!i&&!o||g)return null;if(d||x)return(0,r.jsxs)("div",{className:"fixed top-0 left-0 right-0 z-[9999] px-4 py-2.5 font-mono text-[11px] flex items-center justify-between gap-3",style:{background:"var(--color-warning, #ff4d00)",color:"#fff"},children:[(0,r.jsx)("span",{children:"API SERVER OFFLINE. RUN: auramaxx restart (or npx --yes auramaxx@latest restart)"}),(0,r.jsx)(b.$n,{type:"button",onClick:()=>{p()},loading:u,variant:"primary",size:"sm",children:"RESTART NOW"}),x&&(0,r.jsx)("span",{className:"text-[10px]",style:{color:"#fff",opacity:.9},children:x})]});if(i&&!e)return(0,r.jsxs)("div",{className:"fixed top-0 left-0 right-0 z-[100] px-3 py-2 border text-[9px] font-mono tracking-widest flex items-center justify-center gap-3",style:{color:"var(--color-accent-foreground, #0a0a0a)",borderColor:"var(--color-accent, #ccff00)",background:"var(--color-accent, #ccff00)"},children:[(0,r.jsxs)("span",{children:["UPDATE INSTALLED — RESTART MANUALLY TO APPLY",a?" (".concat(a,")"):""]}),(0,r.jsx)("span",{children:"RUN: auramaxx restart"}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(b.$n,{type:"button",size:"sm",variant:"primary",loading:u,onClick:()=>{p()},children:"RESTART NOW"}),(0,r.jsx)(b.$n,{type:"button",size:"sm",variant:"ghost",onClick:h,"aria-label":"Dismiss update banner",className:"text-[var(--color-accent-foreground,#0a0a0a)] hover:bg-black/10",children:(0,r.jsx)(aE.A,{size:12})})]})]});let y=!t||"unknown"===t.trim().toLowerCase();return(0,r.jsxs)("div",{className:"fixed top-0 left-0 right-0 z-[9999] px-4 py-2.5 font-mono text-[11px] flex items-center justify-between gap-3",style:{background:"var(--color-warning, #ff4d00)",color:"#fff"},children:[(0,r.jsx)("span",{children:y?"New update available. Update to latest version".concat(a?" (".concat(a,")"):"","."):"Update available: ".concat(t," → ").concat(a)}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(b.$n,{type:"button",onClick:()=>{c()},loading:s||n,variant:"primary",size:"sm",children:n?"UPDATING...":"UPDATE NOW"}),(0,r.jsx)(b.$n,{type:"button",size:"sm",variant:"ghost",onClick:h,"aria-label":"Dismiss update banner",className:"text-white/90 hover:text-white hover:bg-white/10",children:(0,r.jsx)(aE.A,{size:12})})]}),o&&(0,r.jsx)("span",{className:"text-[10px]",style:{color:"#fff",opacity:.9},children:o})]})}let az=["ready to auramaxx and mog prompt peasants?","you are perfect. never give up your aura","why jestermaxx when you can auramaxx?","lock tf in, the aura farm is live.","we are so back. aura at all-time highs.","negative motion detected. deploy tera-aura.","delulu? no. pre-success manifestation engine.","doomers offline, builders online.","your aura just hit legendary rarity.","brainrot but make it productive.","stack wins, stack aura, stack peace.","this session is sponsored by unstoppable motion.","if plan A fails, we auramaxx harder.","zero cope, pure glow-up execution.","cooked? nah. we’re perfectly seasoned.","straight gas, no brakes, no bad vibes.","today’s forecast: 100% chance of aura gains.","touch grass, then auramaxx.","say no to digital slops. say yes to auramaxx.","if the world goes dark can can i still auramaxx with you? \uD83D\uDDA4\uD83D\uDDFF","It’s me, AI. You are absolutely right. I want to auramaxx as well."],aO="auramaxx:start-banner-quote-index";var aP=a(65685);let aF=["admin","dev","strict"],aD=["auto","strict","off"],a_=[{value:"admin",label:"maxx (admin)",description:"Full access. Use only when you fully trust the agent."},{value:"dev",label:"mid (dev)",description:"Access to most things. Human approval for stuff like CVV."},{value:"strict",label:"sus (local)",description:"Most locked down. Every request needs manual approval."}],aU=[{value:"auto",label:"auto (recommended)",description:"Uses `.aura` when present and safely falls back to token scope when missing."},{value:"strict",label:"strict (require .aura)",description:"Requires explicit `.aura` mappings for secret access."},{value:"off",label:"off (disable project allowlist)",description:"Disables project allowlist checks for local token access."}],aH=[{value:"dev",label:"mid (dev)",description:"Access to most things. Human approval for stuff like CVV."},{value:"strict",label:"sus (local)",description:"Most locked down. Every request needs manual approval."},{value:"admin",label:"maxx (admin)",description:"Full access. Use only when you fully trust the agent."}],aM=[{value:"light",label:"Light"},{value:"dark",label:"Dark"}],aW=[{value:"normal",label:"Normal"},{value:"big",label:"Big"}],aK="aura:favoriteHubUrls";function aB(e){return e.trim().replace(/\/+$/,"")}let a$="aura:onboarding-seed-draft",aV="auramaxx_admin_token",aG=new Set(s.Yu.english.map(e=>e.toLowerCase())),aY=e=>e.trim().toLowerCase().split(/\s+/).filter(Boolean),aq=[{src:"/agent9.png",label:"Agent 1",width:"clamp(24px, 3.8vw, 40px)",height:"clamp(34px, 5.6vw, 58px)",baselineOffset:"clamp(4px, 0.8vw, 8px)",spriteY:"0%",cropBottom:"4px"},{src:"/agent10.png",label:"Agent 2",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent1.png",label:"Agent 3",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent2.png",label:"Agent 4",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent3.png",label:"Agent 5",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent4.png",label:"Agent 6",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent5.png",label:"Agent 7",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent6.png",label:"Agent 8",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent7.png",label:"Agent 9",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"},{src:"/agent8.png",label:"Agent 10",width:"clamp(28px, 4.4vw, 46px)",height:"clamp(40px, 6.4vw, 66px)",baselineOffset:"0px",spriteY:"0%",cropBottom:"0px"}];function aX(e){let t=1e4*Math.sin(e);return t-Math.floor(t)}function aJ(){let{token:e,setToken:t,clearToken:a}=(0,u.A)(),{colorMode:n,uiScale:f,setColorMode:m,setUiScale:v}=(0,aP.D)(),[h,g]=(0,l.useState)("loading"),[y,j]=(0,l.useState)(""),[w,k]=(0,l.useState)(!0),[N,S]=(0,l.useState)(!1),[C,A]=(0,l.useState)(null),[I,E]=(0,l.useState)(null),[T,L]=(0,l.useState)(!1),[R,z]=(0,l.useState)(null),[O,P]=(0,l.useState)(null),[F,D]=(0,l.useState)(!1),[_,U]=(0,l.useState)("admin"),[H,M]=(0,l.useState)("seed"),[W,K]=(0,l.useState)(null),[B,$]=(0,l.useState)(!1),[V,G]=(0,l.useState)(!1),{notifications:Y,dismissNotification:q}=(0,ta.S)({autoFetch:!!e}),[X,J]=(0,l.useState)(!1),[Q,Z]=(0,l.useState)(!1),[ee,et]=(0,l.useState)(null),[ea,er]=(0,l.useState)(null),[el,es]=(0,l.useState)({profile:"admin",profileVersion:"v1",autoApprove:!0,projectScopeMode:"off"}),[en,eo]=(0,l.useState)(null),[ei,ec]=(0,l.useState)(null),[ed,eu]=(0,l.useState)({}),[ex,ep]=(0,l.useState)(null),[ef,em]=(0,l.useState)(!1),[ev,eh]=(0,l.useState)(!1),[eg,eb]=(0,l.useState)(!1),[ey,ej]=(0,l.useState)(!1),[ew,ek]=(0,l.useState)(!0),[eN,eS]=(0,l.useState)(!1),[eC,eA]=(0,l.useState)(!1),[eI,eE]=(0,l.useState)(!1),[eT,eL]=(0,l.useState)(!1),[eR,ez]=(0,l.useState)([]),[eO,eP]=(0,l.useState)(!1),[eF,eD]=(0,l.useState)(!1),[e_,eU]=(0,l.useState)(null),[eH,eM]=(0,l.useState)(!1),[eW,eK]=(0,l.useState)(null),[eB,e$]=(0,l.useState)(null),[eV,eG]=(0,l.useState)(!1),[eY,eq]=(0,l.useState)(""),[eX,eJ]=(0,l.useState)(""),[eQ,eZ]=(0,l.useState)(""),[e0,e1]=(0,l.useState)(null),[e4,e2]=(0,l.useState)(null),[e8,e6]=(0,l.useState)(!1),[e3,e5]=(0,l.useState)(!1),[e9,e7]=(0,l.useState)(!1),[te,tt]=(0,l.useState)(!1),[tr,tl]=(0,l.useState)(!1),[ts,tn]=(0,l.useState)(()=>{var e;return null!=(e=localStorage.getItem("aura:activeViewId"))?e:"main"}),[to,ti]=(0,l.useState)([]),[tc,td]=(0,l.useState)(()=>{var e;return null!=(e=localStorage.getItem("aura:activeHubUrl"))?e:""}),[tu,tx]=(0,l.useState)(!1),[tp,tf]=(0,l.useState)(""),[tm,tv]=(0,l.useState)(""),[th,tg]=(0,l.useState)(!1),[tj,tw]=(0,l.useState)(null),[tk,tN]=(0,l.useState)(null),[tS,tC]=(0,l.useState)(""),[tA,tI]=(0,l.useState)(()=>{try{let e=localStorage.getItem(aK);if(!e)return[];let t=JSON.parse(e);if(!Array.isArray(t))return[];let a=t.filter(e=>"string"==typeof e).map(e=>aB(e)).filter(Boolean);return Array.from(new Set(a))}catch(e){return[]}}),tE=(0,l.useCallback)(e=>{let t=aB(e);td(t),localStorage.setItem("aura:activeHubUrl",t)},[]),tT=(0,l.useCallback)(async()=>{let e=((await x.FH.get(x.jI.Wallet,"/agents/credential")).agents||[]).find(e=>e.isPrimary&&!e.parentAgentId);if(!e)throw Error("No primary agent found");return e.id},[]),tL=(0,l.useCallback)(async()=>{try{let e=await tT(),[t,a]=await Promise.all([ac(e),ai().catch(()=>"")]),r=aB(a),l=r?t.filter(e=>aB(e.hubUrl)!==r):t;tC(r),ti(l),tI(e=>{let t=new Set(l.map(e=>aB(e.hubUrl))),a=e.filter(e=>t.has(e));return a.length===e.length?e:a}),td(e=>e&&l.some(t=>t.hubUrl===e)?e:l.length>0?l[0].hubUrl:"")}catch(e){}},[tT]);(0,l.useEffect)(()=>{te&&tL()},[te,tL]),(0,l.useEffect)(()=>{localStorage.setItem(aK,JSON.stringify(tA))},[tA]);let tP=(0,l.useCallback)(async()=>{let e=tp.trim();if(e&&!th){tg(!0),tw(null);try{let t=await tT();await ad(t,e,tm.trim()||void 0),await tL(),tx(!1),tf(""),tv(""),tE(aB(e))}catch(e){tw(e instanceof Error?e.message:"Failed to join hub")}finally{tg(!1)}}},[tp,tm,th,tT,tL,tE]),tF=(0,l.useCallback)(e=>{let t=aB(e.hubUrl);t&&tI(e=>e.includes(t)?e.filter(e=>e!==t):[t,...e.filter(e=>e!==t)])},[]),tD=(0,l.useCallback)(async e=>{let t=aB(e.hubUrl);if(t){if(tS&&t===tS)return void tN("Default hub cannot be removed.");try{let e=await tT();await au(e,t),tI(e=>e.filter(e=>e!==t)),await tL()}catch(e){tN(e instanceof Error?e.message:"Failed to remove hub")}}},[tS,tT,tL]),[t_,tU]=(0,l.useState)("unknown"),[tH,tM]=(0,l.useState)(12),[tW,tK]=(0,l.useState)(Array(12).fill("")),[tB,t$]=(0,l.useState)(!1),[tV,tG]=(0,l.useState)(!1),[tY]=(0,l.useState)(()=>{try{return function(e){var t;let a=e.getItem(aO),r=a?Number.parseInt(a,10):-1,l=Number.isFinite(r)?(r+1)%az.length:0;e.setItem(aO,String(l));let s=(null!=(t=az[!Number.isFinite(l)?0:Math.abs(Math.floor(l))%az.length])?t:az[0]).trimStart();return s.startsWith("\uD83D\uDDFF")?s:"".concat("\uD83D\uDDFF ").concat(s)}(window.localStorage)}catch(e){return az[0]}}),[tq,tX]=(0,l.useState)(""),[tJ,tQ]=(0,l.useState)(null),[tZ,t0]=(0,l.useState)(!1),t4=(0,l.useRef)("loading"),t2=(0,l.useRef)(null),t8=(0,l.useRef)(null),t6=(0,l.useRef)(!0),t3=(0,l.useRef)(0),t5=(0,l.useRef)(null),t9=(0,l.useMemo)(()=>!!I,[I]),t7=(0,l.useMemo)(()=>Y.filter(e=>"pending"===e.status&&"notify"!==e.type).length,[Y]),ae=(0,l.useMemo)(()=>t7>0?"calc(4rem + 3.5rem)":"4rem",[t7]),at=(0,l.useMemo)(()=>tW.filter(e=>e.length>0).length,[tW]),aa=(0,l.useMemo)(()=>tW.map(e=>e.trim().toLowerCase()).join(" ").trim(),[tW]),ar=(0,l.useMemo)(()=>{let e=new Set;return tW.forEach((t,a)=>{t&&(aG.has(t.trim().toLowerCase())||e.add(a))}),e},[tW]),al=(0,l.useMemo)(()=>at===tH&&!(ar.size>0)&&s.JB(aa),[ar.size,aa,tH,at]),as=(0,l.useMemo)(()=>Array.from({length:4},()=>aq).flat(),[]),an=(0,l.useCallback)(e=>"admin"===e.profile,[]),ao=(0,l.useMemo)(()=>!!ea&&JSON.stringify(ea)!==JSON.stringify(el),[el,ea]);(0,l.useEffect)(()=>{try{let e=sessionStorage.getItem(a$);if(!e)return;let t=JSON.parse(e);if(!(null==t?void 0:t.mnemonic)||"number"!=typeof t.createdAt)return void sessionStorage.removeItem(a$);if(Date.now()-t.createdAt>9e5){sessionStorage.removeItem(a$),z("Recovery phrase draft expired. Restart setup to generate a new phrase.");return}E(t.mnemonic),M("seed"),g("setup"),z("Recovered your in-progress recovery phrase for this tab. Confirm after you store it safely.")}catch(e){sessionStorage.removeItem(a$)}},[]),(0,l.useEffect)(()=>{if(!I){sessionStorage.removeItem(a$),M("seed"),P(null);return}let e={mnemonic:I,createdAt:Date.now()};sessionStorage.setItem(a$,JSON.stringify(e))},[I]),(0,l.useEffect)(()=>{"locked"!==h&&e5(!1)},[h]),(0,l.useEffect)(()=>{t4.current=h},[h]),(0,l.useEffect)(()=>(t6.current=!0,()=>{t6.current=!1,t2.current&&clearTimeout(t2.current)}),[]);let ax=(0,l.useCallback)(e=>{let t=t4.current;if("loading"===t||"transition"===t){if(t8.current===e)return;t8.current=e,D(!0),t2.current&&clearTimeout(t2.current),t2.current=setTimeout(()=>{D(!1),t8.current=null,g(e)},220);return}t2.current&&(clearTimeout(t2.current),t2.current=null),t8.current=null,D(!1),g(e)},[]),ap=(0,l.useCallback)(()=>{t2.current&&(clearTimeout(t2.current),t2.current=null),t8.current=null,D(!1),g("transition")},[]);(0,l.useEffect)(()=>{if("locked"!==h)return void t$(!1);if(!window.PublicKeyCredential||window.auraDesktop)return;let e=!1;return(async()=>{try{let t=await x.FH.get(x.jI.Wallet,"/auth/passkey/status");if(e||!t.registered)return;await x.FH.post(x.jI.Wallet,"/auth/passkey/authenticate/options",{}),e||t$(!0)}catch(e){}})(),()=>{e=!0}},[h]);let af=(0,l.useCallback)(async()=>{let r=++t3.current,l=()=>t6.current&&r===t3.current,s=e;if(!s){let e=window.localStorage.getItem(aV),a=window.sessionStorage.getItem(aV),r=e||a;if(r)return void t(r,{persist:e?"local":"session"})}if(s&&!(0,p.G3)())try{t5.current||(t5.current=(async()=>{let{publicKeyBase64:e}=await (0,p.UI)();return(0,x.fP)(e)})().finally(()=>{t5.current=null}));let e=await t5.current;if(!l())return;e.token&&(t(e.token),s=e.token)}catch(e){if(!l())return;a(),s=null}try{let[e,a]=await Promise.all([x.FH.get(x.jI.Wallet,"/setup"),x.FH.get(x.jI.Wallet,"/setup/agents")]);if(!l())return;let r=Array.isArray(a.agents)?a.agents:[];if(!(e.hasWallet||r.some(e=>e.isPrimary)||r.length>0)||t9)return void ax("setup");let n="loading"===t4.current||"transition"===t4.current;if(e.unlocked&&!s&&n)try{if(await new Promise(e=>setTimeout(e,120)),!l())return;let e=window.localStorage.getItem(aV),a=window.sessionStorage.getItem(aV),r=e||a;if(r)return void t(r,{persist:e?"local":"session"})}catch(e){if(!l())return}if(!e.unlocked&&s&&n)try{if(await new Promise(e=>setTimeout(e,450)),!l())return;let e=await x.FH.get(x.jI.Wallet,"/setup");if(!l())return;if(e.unlocked)return void ax("unlocked")}catch(e){if(!l())return}if(!e.unlocked||!s)return void ax("locked");ax("unlocked")}catch(e){if(!l())return;ax("setup")}},[e,a,t9,ax,t]);(0,l.useEffect)(()=>{af()},[af]);let am=(0,l.useCallback)(async()=>{if(!e)return void eo("Unlock agent first to manage local socket policy.");em(!0),eo(null),ec(null),ep(null);try{var t,a,r;let l=x.FH.getBaseUrl(x.jI.Wallet),s=await fetch("".concat(l,"/defaults"),{headers:{Authorization:"Bearer ".concat(e)}});if(!s.ok)throw Error("Failed to load canonical trust policy defaults.");let n=await s.json();if(!1===n.success)throw Error("Failed to load canonical trust policy defaults.");let o=Object.values(n.defaults||{}).flat(),i=e=>{var t;return null==(t=o.find(t=>t.key===e))?void 0:t.value},c=String(null!=(t=i("trust.localProfile"))?t:"").trim();if(!aF.includes(c))throw Error("Unknown persisted local profile: ".concat(c||"(empty)"));let d=String(null!=(a=i("trust.localProfileVersion"))?a:"v1").trim();if("v1"!==d)throw Error("Unknown local profile version; refusing to edit settings.");let u=String(null!=(r=i("trust.projectScopeMode"))?r:"off").trim();if(!aD.includes(u))throw Error("Unknown persisted project scope mode: ".concat(u||"(empty)"));let p={profile:c,profileVersion:"v1",autoApprove:!!i("trust.localAutoApprove"),projectScopeMode:u};er(p),es(p)}catch(e){eo(e.message||"Failed to load policy settings"),er(null)}finally{em(!1)}},[e]);(0,l.useEffect)(()=>{V&&am()},[V,am]),(0,l.useEffect)(()=>{"unlocked"===h&&x.FH.get(x.jI.Wallet,"/flags").then(e=>{e7(!!e.EXPERIMENTAL_WALLET),tt(!!e.SOCIAL),tl(!!e.SHOW_DISCOVER_HUB)}).catch(()=>{})},[h]),(0,l.useEffect)(()=>{let e=new Set(["main"]);if(e9&&(e.add("agents"),te&&(e.add("social"),tr&&e.add("hub"))),e.has(ts))return;let t="main";tn(t),localStorage.setItem("aura:activeViewId",t)},[ts,e9,te,tr]),(0,l.useEffect)(()=>{fetch("/api/version",{cache:"no-store"}).then(e=>e.ok?e.json():null).then(e=>{(null==e?void 0:e.success)&&"string"==typeof e.current&&e.current.trim()&&tU(e.current.trim())}).catch(()=>{})},[]);let av=(0,l.useCallback)(async()=>{if(!e)throw Error("Missing auth token for save.");if(!aF.includes(el.profile))throw Error("Unknown profile selected; refusing to persist.");if(!aD.includes(el.projectScopeMode))throw Error("Unknown project scope mode selected; refusing to persist.");let t=x.FH.getBaseUrl(x.jI.Wallet),a={"Content-Type":"application/json",Authorization:"Bearer ".concat(e)},r=[["trust.localProfile",el.profile],["trust.localProfileVersion","v1"],["trust.localAutoApprove",el.autoApprove],["trust.projectScopeMode",el.projectScopeMode]];if(!(await Promise.all(r.map(async e=>{let[r,l]=e;return(await fetch("".concat(t,"/defaults/").concat(r),{method:"PATCH",headers:a,body:JSON.stringify({value:l})})).ok}))).every(Boolean))throw Error("Failed to save canonical trust policy defaults.");return{...el,profileVersion:"v1"}},[el,e]),ah=(0,l.useCallback)(async()=>{if(ea&&!ef&&!ev){if(!an(ea)&&an(el)&&!eg)return void eb(!0);eh(!0),ec(null),ep(null);try{let e=await av();er(e),es(e),eb(!1),ep("Local trust policy saved. Make sure you restart AuraMaxx to apply the new policy. Changes apply to newly issued local tokens only.")}catch(t){let e=t.message||"Failed to save policy settings";eb(!1),e.includes("Unknown profile selected")||e.includes("Unknown project scope mode selected")?ec(e):(await am(),ec("".concat(e," Server values were reloaded.")))}finally{eh(!1)}}},[eg,an,am,av,el,ef,ev,ea]),ag=(0,l.useCallback)(()=>{eG(!1),eq(""),eJ(""),eZ(""),e1(null),e6(!1)},[]),ab=(0,l.useCallback)(async e=>{if(e.preventDefault(),e1(null),e2(null),eX.length<8)return void e1("New password must be at least 8 characters.");if(eX!==eQ)return void e1("New password and confirmation do not match.");e6(!0);try{await (0,x.DK)(eY,eX),e2("Primary agent password updated."),ag()}catch(e){e1(e.message||"Failed to change primary password.")}finally{e6(!1)}},[ag,eQ,eY,eX]),ay=(0,l.useCallback)((e,t)=>{let a=t.trim().toLowerCase();if(a.includes(" ")){let t=aY(a);if(t.length>1){let a=[...tW];t.forEach((t,r)=>{let l=e+r;l<a.length&&(a[l]=t)}),tK(a),tQ(null);return}}let r=[...tW];r[e]=a,tK(r),tQ(null)},[tW]),ak=(0,l.useCallback)((e,t)=>{let a=aY(t);if(a.length<=1)return!1;let r=a.length>12?24:tH;if(r!==tH){tM(r);let e=Array(r).fill("");return a.slice(0,r).forEach((t,a)=>{e[a]=t}),tK(e),tQ(null),!0}let l=[...tW];return a.forEach((t,a)=>{let r=e+a;r<l.length&&(l[r]=t)}),tK(l),tQ(null),!0},[tH,tW]),aN=(0,l.useCallback)(async e=>{if(e.preventDefault(),tQ(null),tq.length<8)return void tQ("New password must be at least 8 characters.");if(!al)return void tQ("Enter a valid 12 or 24-word BIP-39 seed phrase.");t0(!0);try{let{publicKeyBase64:e}=await (0,p.UI)(),a=await (0,x.OW)(aa,tq,e);a.token&&t(a.token,{persist:w?"local":"session"}),j(""),tX(""),tK(Array(tH).fill("")),ap(),aQ()}catch(e){tQ(e.message||"Recovery failed.")}finally{t0(!1)}},[ap,al,aa,tq,tH,t,w]),aS=async e=>{if(e.preventDefault(),y){S(!0),A(null);try{let{publicKeyBase64:e}=await (0,p.UI)(),a=await (0,x.WE)(y,void 0,e);a.token&&t(a.token,{persist:w?"local":"session"}),j(""),ap(),aQ()}catch(e){A(e.message||"Unlock failed")}finally{S(!1)}}},aE=async e=>{if(e.preventDefault(),!(y.length<8)){S(!0),A(null);try{let{publicKeyBase64:e}=await (0,p.UI)(),a=await (0,x.ne)(y,e);a.token&&(t(a.token,{persist:w?"local":"session"}),K(a.token)),a.mnemonic&&(E(a.mnemonic),L(!1),M("seed"),z(null),P(null)),j(""),a.mnemonic||af()}catch(t){let e=t.message||"Setup failed";if(/already exists/i.test(e)){A("Primary agent already exists. Enter your password to unlock it."),g("locked");return}A(e)}finally{S(!1)}}},aT=(0,l.useCallback)(async()=>{var e;if(!I)return;let t=!1;if("undefined"!=typeof navigator&&(null==(e=navigator.clipboard)?void 0:e.writeText))try{await navigator.clipboard.writeText(I),t=!0}catch(e){t=!1}if(t)return void P("copied");let a=document.createElement("textarea");a.value=I,a.setAttribute("readonly","true"),a.style.position="fixed",a.style.left="-9999px",document.body.appendChild(a),a.focus(),a.select();let r=!1;try{r=document.execCommand("copy")}catch(e){r=!1}finally{a.remove()}P(r?"copied":"copy-failed")},[I]),aL=(0,l.useCallback)(()=>{if(!I)return;let e=new Date().toISOString().slice(0,10),t=I.split(" ").map((e,t)=>"".concat(t+1,". ").concat(e)).join("\n"),a="# Aura Agent Seed Phrase Backup\n\n**Date:** ".concat(e,"\n**WARNING:** Keep this file safe and private. Anyone with this phrase can access your agent.\n\n").concat(t,"\n"),r="",l=document.createElement("a");try{let t=new Blob([a],{type:"text/markdown;charset=utf-8"});l.href=r=URL.createObjectURL(t),l.download="aura-seed-backup-".concat(e,".md"),l.style.display="none",document.body.appendChild(l),l.click(),P("downloaded")}catch(e){P("download-failed")}finally{l.remove(),r&&URL.revokeObjectURL(r)}},[I]),aJ=(0,l.useCallback)(async()=>{let t=W||e;if(!t)throw Error("Session token unavailable. Unlock again and retry setup.");let a="strict"!==_,r=x.FH.getBaseUrl(x.jI.Wallet),l={"Content-Type":"application/json",Authorization:"Bearer ".concat(t)};await fetch("".concat(r,"/defaults/trust.localProfile"),{method:"PATCH",headers:l,body:JSON.stringify({value:_})}),await fetch("".concat(r,"/defaults/trust.localProfileVersion"),{method:"PATCH",headers:l,body:JSON.stringify({value:"v1"})}),await fetch("".concat(r,"/defaults/trust.localAutoApprove"),{method:"PATCH",headers:l,body:JSON.stringify({value:a})})},[_,W,e]),aQ=(0,l.useCallback)(async()=>{$(!1);let e=!1,t=window.setTimeout(()=>{e||$(!0)},1500);try{await af(),e=!0}finally{window.clearTimeout(t)}},[af]),aZ=(0,l.useCallback)(async()=>{tG(!0),A(null);try{let{publicKeyBase64:e}=await (0,p.UI)(),a=await x.FH.post(x.jI.Wallet,"/auth/passkey/authenticate/options",{}),r=e=>{let t=e.replace(/-/g,"+").replace(/_/g,"/");for(;t.length%4;)t+="=";let a=atob(t),r=new Uint8Array(a.length);for(let e=0;e<a.length;e++)r[e]=a.charCodeAt(e);return r.buffer},l=e=>{let t=new Uint8Array(e),a="";for(let e=0;e<t.length;e++)a+=String.fromCharCode(t[e]);return btoa(a).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")},s={challenge:r(a.challenge),rpId:a.rpId,allowCredentials:(a.allowCredentials||[]).map(e=>({type:"public-key",id:r(e.id),transports:e.transports})),timeout:a.timeout,userVerification:a.userVerification||"required"},n=await navigator.credentials.get({publicKey:s});if(!n)return void tG(!1);let o=n.response,i=await x.FH.post(x.jI.Wallet,"/auth/passkey/authenticate/verify",{credential:{id:l(n.rawId),rawId:l(n.rawId),type:n.type,response:{clientDataJSON:l(o.clientDataJSON),authenticatorData:l(o.authenticatorData),signature:l(o.signature),userHandle:o.userHandle?l(o.userHandle):void 0}},pubkey:e});i.success&&i.token?(t(i.token,{persist:w?"local":"session"}),ap(),aQ()):A(i.error||"Biometric authentication failed")}catch(t){if(t instanceof Error&&"NotAllowedError"===t.name)return void tG(!1);let e=t instanceof Error?t.message:"Biometric authentication failed";e.includes("agent_locked")?t$(!1):A(e)}finally{tG(!1)}},[ap,w,t,aQ]),a0=(0,l.useCallback)(async()=>{S(!0),A(null);try{await aJ(),E(null),L(!1),z(null),K(null),M("seed"),ap(),aQ()}catch(e){A(e.message||"Failed to save local agent mode")}finally{S(!1)}},[ap,aQ,aJ]),a1=(0,l.useCallback)(()=>{t2.current&&(clearTimeout(t2.current),t2.current=null),D(!1),A(null),g("locked")},[]),a4=(0,l.useCallback)(async()=>{Z(!0),et(null);try{await x.FH.post(x.jI.Wallet,"/nuke",{}),G(!1),eb(!1),ec(null),eu({}),e1(null),ek(!0),eS(!1),eA(!1),eE(!1),eG(!1),J(!1),Z(!1),et(null),ea&&es(ea),window.location.reload()}catch(e){et(e.message||"Failed to nuke wallet"),console.error("[UnlockPage] Nuke failed:",e)}finally{Z(!1)}},[ea]),a2=(0,l.useCallback)(async()=>{if(!e)return void ez([]);eP(!0);try{let e=await x.FH.get(x.jI.Wallet,"/backup");e.success&&ez(e.backups)}catch(e){ez([])}finally{eP(!1)}},[e]),a8=(0,l.useCallback)(async()=>{eD(!0);try{(await x.FH.post(x.jI.Wallet,"/backup")).success&&await a2()}catch(e){console.error("Backup create failed",e)}finally{eD(!1)}},[a2]),a6=(0,l.useCallback)(async()=>{eM(!0);try{let t=x.FH.getBaseUrl(x.jI.Wallet),a=await fetch("".concat(t,"/backup/export"),{headers:{Authorization:"Bearer ".concat(e||"")}});if(!a.ok)return;let r=await a.blob(),l=(a.headers.get("Content-Disposition")||"").match(/filename="?([^"]+)"?/),s=l?l[1]:"auramaxx-export.db",n=URL.createObjectURL(r),o=document.createElement("a");o.href=n,o.download=s,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(n)}catch(e){console.error("Export failed",e)}finally{eM(!1)}},[e]),a3=(0,l.useCallback)(async e=>{eU(e);try{(await x.FH.put(x.jI.Wallet,"/backup",{filename:e})).success&&window.location.reload()}catch(e){console.error("Restore failed",e)}finally{eU(null)}},[]),a5=(0,l.useCallback)(()=>{if(ao)return void ej(!0);G(!1),eb(!1),ec(null),eu({}),e1(null),ek(!0),eS(!1),eA(!1),eE(!1),eL(!1),eK(null),e$(null),eG(!1),J(!1),Z(!1),et(null),ea&&es(ea)},[ao,ea]);if("loading"===h||"transition"===h){let e="transition"===h?"DECRYPTING AGENT":"CONNECTING";return(0,r.jsxs)("div",{className:"min-h-screen bg-[var(--color-background,#f4f4f5)] relative flex items-center justify-center p-4 overflow-hidden",children:[(0,r.jsx)(aR,{}),(0,r.jsxs)("div",{className:"fixed inset-0 pointer-events-none z-0 overflow-hidden",children:[(0,r.jsx)("div",{className:"absolute inset-0 bg-grid-adaptive bg-[size:4rem_4rem] opacity-30"}),(0,r.jsx)("div",{className:"absolute inset-0 tyvek-texture opacity-40 mix-blend-multiply"}),(0,r.jsx)("div",{className:"absolute bottom-[5%] right-[5%] opacity-5 select-none",children:(0,r.jsx)("h1",{className:"text-[15vw] font-bold leading-none text-[var(--color-text,#0a0a0a)] font-mono tracking-tighter text-right",children:"AURAMAXX"})})]}),(0,r.jsx)("div",{className:"fixed top-6 left-6 z-50 flex items-center gap-3",children:(0,r.jsx)("div",{className:"w-10 h-10",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})})}),(0,r.jsxs)("div",{className:"fixed top-7 right-6 z-50 flex items-center gap-3 font-mono text-[10px] tracking-widest",children:[(0,r.jsx)(o(),{href:"/docs",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"DOCS"}),(0,r.jsx)(o(),{href:"/api",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"API"}),(0,r.jsx)("a",{href:"https://github.com/Aura-Industry/auramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"GITHUB"}),(0,r.jsx)("a",{href:"https://x.com/npxauramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"X"}),(0,r.jsx)("a",{href:"https://x.com/nicoletteduclar",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"HELP"}),(0,r.jsx)(aA.default,{})]}),(0,r.jsxs)("div",{className:"relative z-10 w-full max-w-[320px] p-6 flex flex-col items-center text-center ".concat(F?"animate-fade-out-up":"animate-fade-in-up"),children:[(0,r.jsx)("div",{className:"w-10 h-10 mb-2 opacity-60",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})}),(0,r.jsx)("div",{className:"w-6 h-6 border-2 border-[var(--color-border,#d4d4d8)] border-t-[var(--color-text,#0a0a0a)] animate-spin"}),(0,r.jsx)("div",{className:"mt-4 label-specimen text-[var(--color-text-muted,#6b7280)] animate-pulse",children:e}),(0,r.jsx)("div",{className:"mt-3 w-32 h-[2px] skeleton-mech"}),"transition"===h&&B&&(0,r.jsxs)("div",{className:"mt-6 w-full max-w-[280px] space-y-3 text-center",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20",children:"Dashboard took too long. You can retry without re-running onboarding."}),(0,r.jsx)("button",{onClick:()=>{aQ()},className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity clip-specimen-sm",children:"RETRY"})]})]})]})}if("unlocked"===h){let e=[...e9?tO.Rl:tO.Rl.filter(e=>"main"===e.id),...e9&&te?[tO.U0,...tr?[tO.kd]:[]]:[]];return(0,r.jsxs)("div",{className:"relative h-screen flex agent-surface overflow-hidden",children:[(0,r.jsx)(tz.I,{views:e,activeViewId:ts,onSelectView:e=>{tn(e),localStorage.setItem("aura:activeViewId",e)},hubs:to,activeHubUrl:tc,onSelectHub:tE,favoriteHubUrls:tA,nonRemovableHubUrls:tS?[tS]:[],onToggleHubFavorite:tF,onRemoveHub:tD,onAddHub:e9&&tr?()=>{tw(null),tx(!0)}:void 0}),(0,r.jsxs)("div",{className:"relative flex-1 h-full overflow-hidden",children:[(0,r.jsx)(aR,{}),(0,r.jsxs)("div",{className:"fixed top-3 right-6 z-50 flex items-center gap-1.5",children:[(0,r.jsx)("a",{href:"https://x.com/nicoletteduclar",target:"_blank",rel:"noopener noreferrer",className:"p-1.5 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-surface,#ffffff)]/50 transition-colors rounded",title:"Help","aria-label":"Help",children:(0,r.jsx)(i.A,{size:14})}),(0,r.jsx)("button",{onClick:()=>G(!0),className:"p-1.5 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-surface,#ffffff)]/50 transition-colors rounded",title:"Settings","aria-label":"Settings",children:(0,r.jsx)(c.A,{size:14})}),(0,r.jsx)(ty.v,{notifications:Y,onDismiss:q}),(0,r.jsx)(aA.default,{})]}),(0,r.jsxs)("div",{className:"fixed right-6 z-50 flex items-center gap-3 font-mono text-[10px] tracking-widest transition-[bottom]",style:{bottom:ae},children:[(0,r.jsx)(o(),{href:"/docs",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"DOCS"}),(0,r.jsx)(o(),{href:"/api",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"API"}),(0,r.jsx)("a",{href:"https://github.com/Aura-Industry/auramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"GITHUB"}),(0,r.jsx)("a",{href:"https://x.com/npxauramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"X"}),(0,r.jsx)("a",{href:"https://x.com/nicoletteduclar",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"HELP"})]}),(0,r.jsx)("div",{className:"main"===ts?"h-full":"hidden",children:te?(0,r.jsx)(aC,{children:(0,r.jsx)(tb,{onLock:a1,onSettings:()=>G(!0)})}):(0,r.jsx)(tb,{onLock:a1,onSettings:()=>G(!0)})}),e9&&(0,r.jsx)("div",{className:"agents"===ts?"h-full":"hidden",children:(0,r.jsx)(t1,{})}),e9&&te&&(0,r.jsx)("div",{className:"social"===ts?"h-full":"hidden",children:(0,r.jsx)(aC,{children:(0,r.jsx)(aj,{activeHubUrl:tc||void 0})})}),e9&&te&&tr&&(0,r.jsx)("div",{className:"hub"===ts?"h-full":"hidden",children:(0,r.jsx)(aw,{hub:to.find(e=>e.hubUrl===tc),hasHubs:to.length>0,onAddHub:()=>{tw(null),tx(!0)}})}),(0,r.jsx)(tR,{isOpen:V,onClose:a5,passwordChangeSuccess:e4,agentThemeOpen:ew,onToggleAgentTheme:()=>ek(e=>!e),colorMode:n,uiScale:f,onColorModeChange:m,onUiScaleChange:v,agentColorModeOptions:aM,agentUiScaleOptions:aW,agentSettingsOpen:eN,onToggleAgentSettings:()=>eS(e=>!e),policyLoadError:en,policyLoading:ef,onRetryLoadPolicy:()=>{am()},policyForm:el,onPolicyAutoApproveChange:e=>es(t=>({...t,autoApprove:e})),localProfileOptions:a_,onPolicyProfileChange:e=>es(t=>({...t,profile:e})),localProjectScopeOptions:aU,onPolicyProjectScopeModeChange:e=>es(t=>({...t,projectScopeMode:e})),dangerConfirmOpen:eg,onCancelDangerConfirm:()=>{eb(!1),ea&&es(ea)},onConfirmDangerousSave:()=>{ah()},policySaving:ev,policySaveError:ei,policySaveSuccess:ex,canSavePolicy:!en&&!ef&&!ev&&!!ea,onSavePolicy:()=>{ah()},securitySettingsOpen:eC,onToggleSecuritySettings:()=>eA(e=>!e),passwordChangeError:e0,onOpenPasswordModal:()=>{e1(null),eG(!0)},backupSectionOpen:eT,onToggleBackupSection:()=>{let e=!eT;eL(e),e&&a2()},creatingBackup:eF,onCreateBackup:()=>{a8()},exportingDb:eH,onExportDb:()=>{a6()},backupsLoading:eO,backups:eR,formatBackupDate:e=>{let t=e.slice(0,4),a=e.slice(4,6),r=e.slice(6,8),l=e.slice(9,11),s=e.slice(11,13);return"".concat(t,"-").concat(a,"-").concat(r," ").concat(l,":").concat(s)},formatSize:e=>e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB"),restoreConfirmOpen:eW,onOpenRestoreConfirm:(e,t)=>{e$(t),eK(e)},onCloseRestoreConfirm:()=>{eK(null),e$(null)},onConfirmRestore:e=>{eK(null),e$(null),a3(e)},restoringBackup:e_,dangerZoneOpen:eI,onToggleDangerZone:()=>eE(e=>!e),nukeError:ee,onOpenNukeConfirm:()=>{et(null),J(!0)},nuking:Q}),(0,r.jsx)(b.Rw,{isOpen:X,onClose:()=>J(!1),onConfirm:()=>{a4()},title:"Nuke Agent",message:"Permanently delete your agent, wallets, credentials, and local configuration. This cannot be undone.",confirmText:"NUKE",cancelText:"CANCEL",variant:"danger",loading:Q}),(0,r.jsx)(b.Rw,{isOpen:ey,onClose:()=>ej(!1),onConfirm:()=>{ej(!1),G(!1),eb(!1),ec(null),eu({}),e1(null),ek(!0),eS(!1),eA(!1),eE(!1),eL(!1),eK(null),e$(null),eG(!1),J(!1),Z(!1),et(null),ea&&es(ea)},variant:"warning",title:"Discard Changes",message:"You have unsaved local policy changes. Discard them?",confirmText:"DISCARD",cancelText:"KEEP EDITING"}),(0,r.jsx)(b.aF,{isOpen:eV,onClose:ag,title:"Change Primary Password",subtitle:"Security",size:"sm",children:(0,r.jsxs)("form",{onSubmit:ab,className:"space-y-3",children:[(0,r.jsx)(b.ks,{type:"password",label:"CURRENT PASSWORD","aria-label":"CURRENT PASSWORD",value:eY,onChange:e=>eq(e.target.value),autoFocus:!0,compact:!0}),(0,r.jsx)(b.ks,{type:"password",label:"NEW PASSWORD","aria-label":"NEW PASSWORD",value:eX,onChange:e=>eJ(e.target.value),compact:!0}),(0,r.jsx)(b.ks,{type:"password",label:"CONFIRM NEW PASSWORD","aria-label":"CONFIRM NEW PASSWORD",value:eQ,onChange:e=>eZ(e.target.value),compact:!0}),e0&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)]",children:e0}),(0,r.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,r.jsx)(b.$n,{type:"button",onClick:ag,disabled:e8,variant:"secondary",size:"lg",className:"flex-1",children:"CANCEL"}),(0,r.jsx)(b.$n,{type:"submit",disabled:e8||!eY||!eX||!eQ,variant:"primary",size:"lg",className:"flex-1",children:e8?"UPDATING...":"UPDATE PASSWORD"})]})]})}),(0,r.jsx)(b.aF,{isOpen:tu,onClose:()=>{tx(!1),tw(null)},title:"Add Server",subtitle:"Hubs",size:"sm",children:(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)(b.ks,{label:"HUB URL","aria-label":"HUB URL",placeholder:"https://hub.example.com",value:tp,onChange:e=>tf(e.target.value),autoFocus:!0,compact:!0}),(0,r.jsx)(b.ks,{label:"LABEL (OPTIONAL)","aria-label":"LABEL",placeholder:"My Server",value:tm,onChange:e=>tv(e.target.value),compact:!0}),tj&&(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-danger)]",children:tj}),(0,r.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,r.jsx)(b.$n,{type:"button",onClick:()=>{tx(!1),tw(null)},disabled:th,variant:"secondary",size:"lg",className:"flex-1",children:"CANCEL"}),(0,r.jsx)(b.$n,{type:"button",onClick:tP,disabled:th||!tp.trim(),variant:"primary",size:"lg",className:"flex-1",children:th?"JOINING...":"JOIN"})]})]})}),(0,r.jsx)(b.aF,{isOpen:!!tk,onClose:()=>tN(null),title:"Hub Action Failed",subtitle:"Hubs",size:"sm",children:(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)("p",{className:"text-[11px] text-[var(--color-text-muted,#6b7280)] font-mono",children:tk}),(0,r.jsx)("div",{className:"flex justify-end pt-1",children:(0,r.jsx)(b.$n,{type:"button",onClick:()=>tN(null),variant:"primary",size:"lg",children:"OK"})})]})}),(0,r.jsx)(aI.Z,{isUnlocked:"unlocked"===h})]})]})}return(0,r.jsxs)("div",{className:"min-h-screen bg-[var(--color-background,#f4f4f5)] relative flex items-center justify-center p-4",children:[(0,r.jsx)(aR,{}),(0,r.jsxs)("div",{className:"fixed inset-0 pointer-events-none z-0 overflow-hidden",children:[(0,r.jsx)("div",{className:"absolute inset-0 bg-grid-adaptive bg-[size:4rem_4rem] opacity-30"}),(0,r.jsx)("div",{className:"absolute inset-0 tyvek-texture opacity-40 mix-blend-multiply"}),(0,r.jsx)("div",{className:"absolute bottom-[5%] right-[5%] opacity-5 select-none","data-testid":"home-background-branding",children:(0,r.jsx)("h1",{className:"text-[15vw] font-bold leading-none text-[var(--color-text,#0a0a0a)] font-mono tracking-tighter text-right",children:"AURAMAXX"})}),(0,r.jsx)("div",{className:"absolute top-10 left-10 w-32 h-32 border-l-4 border-t-4 border-[var(--color-text,#0a0a0a)] opacity-10",children:(0,r.jsx)("div",{className:"absolute top-2 left-2 w-4 h-4 bg-[var(--color-text,#0a0a0a)]"})}),(0,r.jsx)("div",{className:"absolute bottom-10 right-10 w-32 h-32 border-r-4 border-b-4 border-[var(--color-text,#0a0a0a)] opacity-10 flex items-end justify-end",children:(0,r.jsx)("div",{className:"absolute bottom-2 right-2 w-4 h-4 bg-[var(--color-text,#0a0a0a)]"})})]}),(0,r.jsx)("div",{className:"fixed top-6 left-6 z-50 flex items-center gap-3",children:(0,r.jsx)("div",{className:"w-10 h-10",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})})}),(0,r.jsxs)("div",{className:"fixed top-7 right-6 z-50 flex items-center gap-3 font-mono text-[10px] tracking-widest",children:[(0,r.jsx)(o(),{href:"/docs",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"DOCS"}),(0,r.jsx)(o(),{href:"/api",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"API"}),(0,r.jsx)("a",{href:"https://github.com/Aura-Industry/auramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"GITHUB"}),(0,r.jsx)("a",{href:"https://x.com/npxauramaxx",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"X"}),(0,r.jsx)("a",{href:"https://x.com/nicoletteduclar",target:"_blank",rel:"noopener noreferrer",className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"HELP"}),(0,r.jsx)(aA.default,{})]}),(0,r.jsxs)("div",{className:"relative z-10 w-full max-w-[380px]",children:[(0,r.jsx)("div",{className:"absolute -left-8 top-1/2 -translate-y-1/2 text-vertical label-specimen-sm text-[var(--color-text-faint,#9ca3af)] select-none hidden sm:block",children:"AGENT\xa0ACCESS"}),(0,r.jsxs)("div",{className:"bg-[var(--color-surface,#f4f4f2)] clip-specimen border-mech shadow-mech overflow-hidden font-mono corner-marks",children:[(0,r.jsxs)("div",{className:"px-5 py-3 border-b border-[var(--color-border,#d4d4d8)] bg-[var(--color-surface-alt,#fafafa)] flex items-center justify-between",children:[(0,r.jsx)("span",{className:"font-sans font-bold text-sm text-[var(--color-text,#0a0a0a)] uppercase tracking-tight",children:"setup"===h?"Initialize":"Unlock"}),(0,r.jsx)("span",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)] font-bold tracking-widest",children:"setup"===h?"NO_AGENT":"LOCKED"})]}),(0,r.jsxs)("div",{className:"p-6",children:["setup"===h&&I&&"seed"===H&&(0,r.jsxs)("div",{className:"flex flex-col items-center",children:[(0,r.jsx)("div",{className:"w-16 h-16 mb-4",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})}),(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)] tracking-widest text-center mb-4",children:"SAVE YOUR RECOVERY PHRASE"}),(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20 mb-3",children:"Write this down and store it securely. You will stay on this screen until you explicitly confirm."}),R&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-info,#0047ff)] bg-[var(--color-info,#0047ff)]/10 px-3 py-2 border border-[var(--color-info,#0047ff)]/20 mb-3",children:R}),(0,r.jsx)("div",{className:"grid grid-cols-3 gap-2 w-full mb-4",children:I.split(" ").map((e,t)=>(0,r.jsxs)("div",{className:"text-[10px] font-mono text-[var(--color-text,#0a0a0a)] bg-[var(--color-background,#f4f4f5)] px-2 py-1 border border-[var(--color-border,#d4d4d8)]",children:[(0,r.jsxs)("span",{className:"text-[var(--color-text-faint,#9ca3af)] mr-1",children:[t+1,"."]}),e]},t))}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-2 w-full mb-3",children:[(0,r.jsx)("button",{type:"button",onClick:()=>{aT()},className:"h-9 px-2 border border-[var(--color-border,#d4d4d8)] font-mono text-[9px] tracking-widest text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-surface-alt,#fafafa)] transition-colors",children:"COPY SEED PHRASE"}),(0,r.jsx)("button",{type:"button",onClick:aL,className:"h-9 px-2 border border-[var(--color-border,#d4d4d8)] font-mono text-[9px] tracking-widest text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-surface-alt,#fafafa)] transition-colors",children:"DOWNLOAD BACKUP (.MD)"})]}),O&&(0,r.jsx)("div",{className:"w-full mb-3 text-[9px] text-[var(--color-text-muted,#6b7280)]","aria-live":"polite","data-testid":"seed-phrase-action-status",children:O}),(0,r.jsxs)("label",{className:"flex items-start gap-2 w-full mb-3 cursor-pointer",children:[(0,r.jsx)("input",{type:"checkbox",checked:T,onChange:e=>L(e.target.checked),className:"mt-0.5"}),(0,r.jsx)("span",{className:"text-[9px] text-[var(--color-text-muted,#6b7280)]",children:"I have written and verified this recovery phrase in a secure location."})]}),(0,r.jsx)("button",{onClick:()=>{T&&M("trust")},disabled:!T,className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-30 disabled:cursor-not-allowed",children:"CONTINUE TO AGENT MODE"}),(0,r.jsx)("div",{className:"w-full mt-3 text-[8px] text-[var(--color-text-faint,#9ca3af)] text-center",children:"If you leave before confirming, this phrase is recoverable only temporarily in this tab session. If recovery expires, restart onboarding to regenerate."})]}),"setup"===h&&I&&"trust"===H&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex flex-col items-center mb-6",children:[(0,r.jsx)("div",{className:"w-16 h-16 mb-4",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})}),(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)] tracking-widest text-center",children:"LOCAL AGENT MODE"})]}),(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-text-muted,#6b7280)] bg-[var(--color-background,#f4f4f5)] px-3 py-2 border border-[var(--color-border,#d4d4d8)]",children:"How much do you trust your agent?"}),(0,r.jsxs)("fieldset",{className:"border border-[var(--color-border,#d4d4d8)] p-2.5 bg-[var(--color-background,#f4f4f5)]",children:[(0,r.jsx)("legend",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest uppercase px-1",children:"Pick a profile"}),(0,r.jsx)(b.O6,{options:[...aH],value:_,onChange:e=>U(e),ariaLabel:"Onboarding local agent mode"})]}),C&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20",children:C}),(0,r.jsx)("button",{onClick:()=>{a0()},disabled:N,className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-30 disabled:cursor-not-allowed flex items-center justify-center gap-2",children:N?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"w-3 h-3 border border-[var(--color-surface,#ffffff)] border-t-transparent animate-spin"}),"SAVING..."]}):"SAVE MODE AND CONTINUE"})]})]}),"setup"===h&&!I&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex flex-col items-center mb-6",children:[(0,r.jsx)("div",{className:"w-16 h-16 mb-4",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})}),(0,r.jsx)("div",{className:"text-[10px] text-[var(--color-text-muted,#6b7280)] tracking-widest text-center",children:"CREATE YOUR ENCRYPTED AGENT"}),(0,r.jsx)("div",{className:"mt-2 text-[9px] text-[var(--color-text-faint,#9ca3af)] text-center leading-relaxed","data-testid":"start-banner-quote",children:tY})]}),(0,r.jsxs)("form",{onSubmit:aE,className:"space-y-4",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest mb-1.5 uppercase",children:"Encryption Password"}),(0,r.jsx)("input",{type:"password",value:y,onChange:e=>{j(e.target.value),A(null)},placeholder:"Minimum 8 characters",className:"w-full px-3 py-2.5 border border-[var(--color-border,#d4d4d8)] font-mono text-sm text-[var(--color-text,#0a0a0a)] focus:outline-none focus:border-[var(--color-text,#0a0a0a)] bg-[var(--color-surface,#ffffff)] placeholder-[var(--color-text-faint,#9ca3af)] transition-colors",autoFocus:!0})]}),(0,r.jsxs)("label",{className:"flex items-center justify-between gap-3 text-[8px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-2",children:[(0,r.jsx)("input",{type:"checkbox",checked:w,onChange:e=>k(e.target.checked),className:"h-3.5 w-3.5 border border-[var(--color-border,#d4d4d8)] accent-[var(--color-text,#0a0a0a)]"}),"Trusted device"]}),(0,r.jsx)("span",{children:w?"PERSISTENT":"TAB ONLY"})]}),C&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20",children:C}),(0,r.jsx)("button",{type:"submit",disabled:N||y.length<8,className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-30 disabled:cursor-not-allowed flex items-center justify-center gap-2",children:N?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"w-3 h-3 border border-[var(--color-surface,#ffffff)] border-t-transparent animate-spin"}),"INITIALIZING..."]}):"INITIALIZE AGENT"})]}),(0,r.jsx)("div",{className:"mt-4 pt-4 border-t border-[var(--color-border,#d4d4d8)]",children:(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)("div",{className:"w-1 h-1 bg-[var(--color-text-muted,#6b7280)] mt-1.5 flex-shrink-0"}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)] leading-relaxed",children:"This password encrypts your seed phrase locally. It never leaves your machine."})]})})]}),"locked"===h&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex flex-col items-center mb-6",children:[(0,r.jsx)("div",{className:"w-16 h-16 mb-4",children:(0,r.jsx)("img",{src:"/logo.webp",alt:"AuraMaxx",className:"w-full h-full object-contain"})}),(0,r.jsx)("div",{className:"w-full overflow-hidden",children:(0,r.jsx)("div",{className:"yo-mobile-agent-marquee flex w-max items-end gap-1.5",children:as.map((e,t)=>{let a=t%aq.length,l=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=function(e){let t=0;for(let a=0;a<e.length;a+=1)t=(t<<5)-t+e.charCodeAt(a)|0;return Math.abs(t)}(e)+97*t+131*a,l=(aX(r+1)-.5)*8,s=(aX(r+2)-.5)*4+(0===a?-1.5:1.5),n=(aX(r+3)-.5)*5,o=(aX(r+4)-.5)*8,i=(aX(r+5)-.5)*8,c=.72+.06*aX(r+6);return{marginLeft:"".concat(Math.round(o),"px"),marginRight:"".concat(Math.round(i),"px"),transform:"translate(".concat(l.toFixed(1),"px, ").concat(s.toFixed(1),"px) rotate(").concat(n.toFixed(1),"deg) scale(").concat(c.toFixed(3),")")}}(e.src,a,0);return(0,r.jsx)("div",{style:l,children:(0,r.jsx)("div",{className:"yo-sprite",style:{backgroundImage:"url('".concat(e.src,"')"),animationDelay:"".concat(-150*a,"ms, ").concat(-300*a,"ms"),width:e.width,height:e.height,marginBottom:e.baselineOffset,backgroundPositionY:e.spriteY,clipPath:"inset(0 0 ".concat(e.cropBottom," 0)")},role:"img","aria-label":"".concat(e.label," sprite")})},"".concat(e.src,"-").concat(t))})})}),(0,r.jsx)("div",{className:"text-sm text-[var(--color-text-muted,#6b7280)] text-center font-mono mt-3","data-testid":"start-banner-quote",children:tY})]}),!e3&&(0,r.jsxs)(r.Fragment,{children:[tB&&(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)("button",{type:"button",onClick:()=>{aZ()},disabled:tV,className:"w-full py-3 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-50 flex items-center justify-center gap-2",children:tV?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"w-3 h-3 border border-[var(--color-surface,#ffffff)] border-t-transparent animate-spin"}),"AUTHENTICATING..."]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(d.A,{size:14}),"UNLOCK WITH PASSKEY"]})}),(0,r.jsxs)("div",{className:"mt-3 flex items-center gap-3",children:[(0,r.jsx)("div",{className:"flex-1 h-px bg-[var(--color-border,#d4d4d8)]"}),(0,r.jsx)("span",{className:"text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest",children:"OR USE PASSWORD"}),(0,r.jsx)("div",{className:"flex-1 h-px bg-[var(--color-border,#d4d4d8)]"})]})]}),(0,r.jsxs)("form",{onSubmit:aS,className:"space-y-4",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest mb-1.5 uppercase",children:"Password"}),(0,r.jsx)("input",{type:"password",value:y,onChange:e=>{j(e.target.value),A(null)},placeholder:"Enter agent password",className:"w-full px-3 py-2.5 border border-[var(--color-border,#d4d4d8)] font-mono text-sm text-[var(--color-text,#0a0a0a)] focus:outline-none focus:border-[var(--color-text,#0a0a0a)] bg-[var(--color-surface,#ffffff)] placeholder-[var(--color-text-faint,#9ca3af)] transition-colors",autoFocus:!0})]}),(0,r.jsxs)("div",{className:"flex items-center justify-between gap-3 text-[8px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:[(0,r.jsxs)("label",{className:"inline-flex items-center gap-2",children:[(0,r.jsx)("input",{type:"checkbox",checked:w,onChange:e=>k(e.target.checked),className:"h-3.5 w-3.5 border border-[var(--color-border,#d4d4d8)] accent-[var(--color-text,#0a0a0a)]"}),"Trust this device"]}),(0,r.jsx)("button",{type:"button",onClick:()=>{e5(!0),tQ(null)},className:"text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors normal-case tracking-normal",children:"Forgot password?"})]}),C&&(0,r.jsx)("div",{"data-testid":"unlock-error-banner",className:"text-[9px] text-[var(--color-danger,#ef4444)] px-3 py-2 border",style:{borderColor:"color-mix(in srgb, var(--color-danger,#ef4444) 35%, transparent)",background:"color-mix(in srgb, var(--color-danger,#ef4444) 12%, transparent)"},children:C}),(0,r.jsx)("button",{type:"submit",disabled:N||!y,className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-30 disabled:cursor-not-allowed flex items-center justify-center gap-2",children:N?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"w-3 h-3 border border-[var(--color-surface,#ffffff)] border-t-transparent animate-spin"}),"UNLOCKING..."]}):"UNLOCK"})]})]}),e3&&(0,r.jsx)("div",{className:"mt-4 border-t border-[var(--color-border,#d4d4d8)] pt-3 text-center",children:(0,r.jsx)("button",{type:"button",onClick:()=>{e5(!1),tQ(null)},className:"text-[10px] underline underline-offset-2 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] transition-colors",children:"Back to unlock"})}),e3&&(0,r.jsxs)("form",{onSubmit:aN,className:"mt-4 space-y-3",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("div",{className:"text-[9px] tracking-widest uppercase text-[var(--color-text-muted,#6b7280)]",children:"Seed Recovery"}),(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("button",{type:"button",onClick:()=>{tM(12),tK(Array(12).fill(""))},className:"px-2 py-1 text-[8px] border ".concat(12===tH?"bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#fff)] border-[var(--color-text,#0a0a0a)]":"border-[var(--color-border,#d4d4d8)] text-[var(--color-text-muted,#6b7280)]"),children:"12"}),(0,r.jsx)("button",{type:"button",onClick:()=>{tM(24),tK(Array(24).fill(""))},className:"px-2 py-1 text-[8px] border ".concat(24===tH?"bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#fff)] border-[var(--color-text,#0a0a0a)]":"border-[var(--color-border,#d4d4d8)] text-[var(--color-text-muted,#6b7280)]"),children:"24"})]})]}),(0,r.jsx)("div",{className:"grid grid-cols-3 gap-1.5",children:tW.map((e,t)=>{let a=ar.has(t);return(0,r.jsx)(b.ks,{compact:!0,error:a,"aria-label":"Recovery word ".concat(t+1),value:e,onChange:e=>ay(t,e.target.value),onPaste:e=>{ak(t,e.clipboardData.getData("text"))&&e.preventDefault()},placeholder:"".concat(t+1),className:"min-w-0"},"recovery-word-".concat(t))})}),(0,r.jsxs)("div",{className:"text-[9px] text-[var(--color-text-faint,#9ca3af)]",children:[at,"/",tH," words \xb7 ",ar.size>0?"".concat(ar.size," invalid word(s)"):al?"BIP-39 phrase valid":"Waiting for valid BIP-39 phrase"]}),(0,r.jsx)(b.ks,{type:"password",compact:!0,value:tq,onChange:e=>{tX(e.target.value),tQ(null)},placeholder:"New password","aria-label":"New password"}),tJ&&(0,r.jsx)("div",{className:"text-[9px] text-[var(--color-danger,#ef4444)] bg-[var(--color-danger,#ef4444)]/10 px-3 py-2 border border-[var(--color-danger,#ef4444)]/20",children:tJ}),(0,r.jsx)("button",{type:"submit",disabled:tZ,className:"w-full py-2.5 bg-[var(--color-text,#0a0a0a)] text-[var(--color-surface,#ffffff)] font-mono text-xs tracking-widest font-bold hover:opacity-90 transition-opacity disabled:opacity-30",children:tZ?"RECOVERING...":"RECOVER & UNLOCK"})]})]})]}),(0,r.jsx)("div",{className:"border-t border-[var(--color-border,#d4d4d8)] px-3 py-2.5",children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:"h-4 flex-1 bg-[repeating-linear-gradient(90deg,var(--color-text,#000),var(--color-text,#000)_1px,transparent_1px,transparent_3px)] opacity-30"}),(0,r.jsx)("span",{className:"font-mono text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest uppercase",children:"auramaxx.sh"}),(0,r.jsx)("span",{className:"font-mono text-[8px] text-[var(--color-text-faint,#9ca3af)] tracking-widest",children:"unknown"!==t_?"v".concat(t_.replace(/^v/i,"")):""})]})})]})]})]})}},44265:(e,t,a)=>{"use strict";a.d(t,{default:()=>s});var r=a(95155),l=a(65685);function s(){let{colorMode:e,setColorMode:t}=(0,l.D)(),a="light"===e;return(0,r.jsx)("button",{onClick:()=>{t(a?"dark":"light")},className:"p-1.5 text-[var(--color-text-muted,#6b7280)] hover:text-[var(--color-text,#0a0a0a)] hover:bg-[var(--color-surface,#ffffff)]/50 transition-colors rounded","aria-label":a?"Switch to dark mode":"Switch to light mode",children:a?(0,r.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,r.jsx)("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})}):(0,r.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,r.jsx)("circle",{cx:"12",cy:"12",r:"5"}),(0,r.jsx)("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),(0,r.jsx)("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),(0,r.jsx)("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),(0,r.jsx)("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),(0,r.jsx)("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),(0,r.jsx)("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),(0,r.jsx)("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),(0,r.jsx)("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"})]})})}},76629:(e,t,a)=>{Promise.resolve().then(a.bind(a,30141))}},e=>{e.O(0,[2619,7616,142,5362,8370,8291,4901,4114,8441,1255,7358],()=>e(e.s=76629)),_N_E=e.O()}]);