reflex-agent 0.18.2 → 0.19.0

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 (313) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +101 -102
  3. package/.next/app-path-routes-manifest.json +9 -9
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +3 -3
  6. package/.next/react-loadable-manifest.json +1 -1
  7. package/.next/required-server-files.json +2 -1
  8. package/.next/server/app/_not-found/page.js +1 -1
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/agents/[agentId]/page.js +2 -2
  12. package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
  13. package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/agents/[agentId]/respond/route.js +1 -1
  15. package/.next/server/app/api/agents/[agentId]/respond/route.js.nft.json +1 -1
  16. package/.next/server/app/api/agents/[agentId]/respond/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/images/[rootId]/[file]/route.js +1 -1
  18. package/.next/server/app/api/images/[rootId]/[file]/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/oauth/callback/route.js +2 -2
  20. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/oauth/start/route.js +1 -1
  22. package/.next/server/app/api/oauth/start/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/roots/[id]/attachments/route.js +0 -0
  24. package/.next/server/app/api/roots/[id]/attachments/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js +1 -1
  26. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js.nft.json +1 -1
  27. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js +1 -1
  29. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js.nft.json +1 -1
  30. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js +2 -2
  32. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js.nft.json +1 -1
  33. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/roots/[id]/dashboard/route.js +1 -1
  35. package/.next/server/app/api/roots/[id]/dashboard/route.js.nft.json +1 -1
  36. package/.next/server/app/api/roots/[id]/dashboard/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/roots/[id]/suggestions/route.js +1 -1
  38. package/.next/server/app/api/roots/[id]/suggestions/route.js.nft.json +1 -1
  39. package/.next/server/app/api/roots/[id]/suggestions/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/utilities/[scope]/[id]/bundle.js/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/utilities/[scope]/[id]/host/route.js +1 -1
  42. package/.next/server/app/api/utilities/[scope]/[id]/host/route.js.nft.json +1 -1
  43. package/.next/server/app/api/utilities/[scope]/[id]/host/route_client-reference-manifest.js +1 -1
  44. package/.next/server/app/api/utilities/[scope]/[id]/host-api.mjs/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/utilities/[scope]/[id]/host-ui.mjs/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/utilities/[scope]/[id]/iframe/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/utilities/[scope]/[id]/style.css/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/utilities/install-archive/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/audit/page.js +2 -2
  50. package/.next/server/app/audit/page.js.nft.json +1 -1
  51. package/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  52. package/.next/server/app/dispatcher/page.js +2 -2
  53. package/.next/server/app/dispatcher/page.js.nft.json +1 -1
  54. package/.next/server/app/dispatcher/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/onboarding/page.js +3 -3
  56. package/.next/server/app/onboarding/page.js.nft.json +1 -1
  57. package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  58. package/.next/server/app/page.js +2 -2
  59. package/.next/server/app/page.js.nft.json +1 -1
  60. package/.next/server/app/page_client-reference-manifest.js +1 -1
  61. package/.next/server/app/roots/[id]/chat/[topicId]/page.js +2 -2
  62. package/.next/server/app/roots/[id]/chat/[topicId]/page.js.nft.json +1 -1
  63. package/.next/server/app/roots/[id]/chat/[topicId]/page_client-reference-manifest.js +1 -1
  64. package/.next/server/app/roots/[id]/kb/[...slug]/page.js +2 -2
  65. package/.next/server/app/roots/[id]/kb/[...slug]/page.js.nft.json +1 -1
  66. package/.next/server/app/roots/[id]/kb/[...slug]/page_client-reference-manifest.js +1 -1
  67. package/.next/server/app/roots/[id]/memory/page.js +2 -2
  68. package/.next/server/app/roots/[id]/memory/page.js.nft.json +1 -1
  69. package/.next/server/app/roots/[id]/memory/page_client-reference-manifest.js +1 -1
  70. package/.next/server/app/roots/[id]/page.js +4 -4
  71. package/.next/server/app/roots/[id]/page.js.nft.json +1 -1
  72. package/.next/server/app/roots/[id]/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app/roots/[id]/workflows/[wfId]/page.js +2 -2
  74. package/.next/server/app/roots/[id]/workflows/[wfId]/page.js.nft.json +1 -1
  75. package/.next/server/app/roots/[id]/workflows/[wfId]/page_client-reference-manifest.js +1 -1
  76. package/.next/server/app/roots/[id]/workflows/page.js +2 -2
  77. package/.next/server/app/roots/[id]/workflows/page.js.nft.json +1 -1
  78. package/.next/server/app/roots/[id]/workflows/page_client-reference-manifest.js +1 -1
  79. package/.next/server/app/roots/new/page.js +4 -4
  80. package/.next/server/app/roots/new/page.js.nft.json +1 -1
  81. package/.next/server/app/roots/new/page_client-reference-manifest.js +1 -1
  82. package/.next/server/app/settings/page.js +5 -5
  83. package/.next/server/app/settings/page.js.nft.json +1 -1
  84. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  85. package/.next/server/app/share/[id]/file/page.js +2 -2
  86. package/.next/server/app/share/[id]/file/page.js.nft.json +1 -1
  87. package/.next/server/app/share/[id]/file/page_client-reference-manifest.js +1 -1
  88. package/.next/server/app/share/[id]/page.js +2 -2
  89. package/.next/server/app/share/[id]/page.js.nft.json +1 -1
  90. package/.next/server/app/share/[id]/page_client-reference-manifest.js +1 -1
  91. package/.next/server/app/utilities/[scope]/[id]/page.js +2 -2
  92. package/.next/server/app/utilities/[scope]/[id]/page.js.nft.json +1 -1
  93. package/.next/server/app/utilities/[scope]/[id]/page_client-reference-manifest.js +1 -1
  94. package/.next/server/app/utilities/page.js +2 -2
  95. package/.next/server/app/utilities/page.js.nft.json +1 -1
  96. package/.next/server/app/utilities/page_client-reference-manifest.js +1 -1
  97. package/.next/server/app-paths-manifest.json +9 -9
  98. package/.next/server/chunks/{6435.js → 1088.js} +1 -1
  99. package/.next/server/chunks/1105.js +1 -1
  100. package/.next/server/chunks/1179.js +1 -0
  101. package/.next/server/chunks/1223.js +1 -1
  102. package/.next/server/chunks/1244.js +1 -1
  103. package/.next/server/chunks/1281.js +80 -0
  104. package/.next/server/chunks/1336.js +252 -0
  105. package/.next/server/chunks/1353.js +51 -0
  106. package/.next/server/chunks/1431.js +1 -0
  107. package/.next/server/chunks/146.js +2 -0
  108. package/.next/server/chunks/1491.js +79 -0
  109. package/.next/server/chunks/1496.js +148 -0
  110. package/.next/server/chunks/{9631.js → 1589.js} +2 -2
  111. package/.next/server/chunks/1623.js +1 -0
  112. package/.next/server/chunks/1862.js +77 -0
  113. package/.next/server/chunks/1888.js +1 -1
  114. package/.next/server/chunks/1908.js +1 -0
  115. package/.next/server/chunks/192.js +1 -0
  116. package/.next/server/chunks/2069.js +1 -0
  117. package/.next/server/chunks/2087.js +24 -0
  118. package/.next/server/chunks/209.js +1 -0
  119. package/.next/server/chunks/2115.js +77 -0
  120. package/.next/server/chunks/2232.js +80 -0
  121. package/.next/server/chunks/{4460.js → 2262.js} +2 -2
  122. package/.next/server/chunks/2280.js +1 -0
  123. package/.next/server/chunks/2433.js +1 -1
  124. package/.next/server/chunks/2485.js +3 -8
  125. package/.next/server/chunks/2503.js +1 -1
  126. package/.next/server/chunks/2539.js +93 -0
  127. package/.next/server/chunks/2764.js +80 -0
  128. package/.next/server/chunks/285.js +24 -75
  129. package/.next/server/chunks/2888.js +7 -0
  130. package/.next/server/chunks/302.js +1 -0
  131. package/.next/server/chunks/3029.js +36 -0
  132. package/.next/server/chunks/3110.js +0 -0
  133. package/.next/server/chunks/3117.js +1 -0
  134. package/.next/server/chunks/3258.js +23 -0
  135. package/.next/server/chunks/331.js +1 -0
  136. package/.next/server/chunks/3332.js +1 -1
  137. package/.next/server/chunks/{4251.js → 3474.js} +24 -25
  138. package/.next/server/chunks/3552.js +43 -0
  139. package/.next/server/chunks/3583.js +104 -0
  140. package/.next/server/chunks/3631.js +1 -0
  141. package/.next/server/chunks/3633.js +1 -0
  142. package/.next/server/chunks/383.js +1 -80
  143. package/.next/server/chunks/3834.js +1 -1
  144. package/.next/server/chunks/3953.js +1 -0
  145. package/.next/server/chunks/3992.js +1 -0
  146. package/.next/server/chunks/4013.js +1 -0
  147. package/.next/server/chunks/4031.js +3 -3
  148. package/.next/server/chunks/4119.js +1 -0
  149. package/.next/server/chunks/4230.js +12 -0
  150. package/.next/server/chunks/4250.js +1 -0
  151. package/.next/server/chunks/4294.js +1 -0
  152. package/.next/server/chunks/4312.js +1 -0
  153. package/.next/server/chunks/4342.js +1 -0
  154. package/.next/server/chunks/4360.js +1 -0
  155. package/.next/server/chunks/449.js +226 -0
  156. package/.next/server/chunks/4578.js +0 -0
  157. package/.next/server/chunks/4585.js +1 -0
  158. package/.next/server/chunks/4611.js +1 -1
  159. package/.next/server/chunks/4639.js +1 -0
  160. package/.next/server/chunks/4682.js +1 -0
  161. package/.next/server/chunks/4788.js +153 -0
  162. package/.next/server/chunks/4812.js +2 -2
  163. package/.next/server/chunks/4925.js +1 -1
  164. package/.next/server/chunks/4952.js +1 -0
  165. package/.next/server/chunks/4969.js +4 -1
  166. package/.next/server/chunks/4989.js +801 -0
  167. package/.next/server/chunks/5211.js +64 -0
  168. package/.next/server/chunks/5243.js +1 -1
  169. package/.next/server/chunks/5308.js +1 -0
  170. package/.next/server/chunks/5461.js +1 -0
  171. package/.next/server/chunks/5549.js +1 -0
  172. package/.next/server/chunks/5719.js +34 -0
  173. package/.next/server/chunks/5810.js +12 -0
  174. package/.next/server/chunks/5922.js +1 -0
  175. package/.next/server/chunks/6142.js +1 -1
  176. package/.next/server/chunks/6216.js +1 -1
  177. package/.next/server/chunks/6318.js +9 -0
  178. package/.next/server/chunks/6483.js +1 -1
  179. package/.next/server/chunks/6509.js +1 -0
  180. package/.next/server/chunks/6571.js +166 -0
  181. package/.next/server/chunks/660.js +1 -0
  182. package/.next/server/chunks/6692.js +1 -0
  183. package/.next/server/chunks/6730.js +1 -1
  184. package/.next/server/chunks/6852.js +1 -0
  185. package/.next/server/chunks/6970.js +1 -0
  186. package/.next/server/chunks/7007.js +1 -0
  187. package/.next/server/chunks/7188.js +1 -1
  188. package/.next/server/chunks/7220.js +1 -1
  189. package/.next/server/chunks/7228.js +1 -0
  190. package/.next/server/chunks/7244.js +1 -0
  191. package/.next/server/chunks/7373.js +90 -0
  192. package/.next/server/chunks/7430.js +1 -1
  193. package/.next/server/chunks/7523.js +1 -0
  194. package/.next/server/chunks/7576.js +1 -0
  195. package/.next/server/chunks/7742.js +7 -0
  196. package/.next/server/chunks/7811.js +215 -0
  197. package/.next/server/chunks/7885.js +1 -0
  198. package/.next/server/chunks/8032.js +3 -0
  199. package/.next/server/chunks/8095.js +24 -0
  200. package/.next/server/chunks/8129.js +5 -0
  201. package/.next/server/chunks/8294.js +1 -0
  202. package/.next/server/chunks/832.js +1 -0
  203. package/.next/server/chunks/8464.js +180 -0
  204. package/.next/server/chunks/8511.js +0 -0
  205. package/.next/server/chunks/8514.js +1 -1
  206. package/.next/server/chunks/8583.js +4 -0
  207. package/.next/server/chunks/8609.js +55 -0
  208. package/.next/server/chunks/8711.js +1 -0
  209. package/.next/server/chunks/8714.js +1 -0
  210. package/.next/server/chunks/8730.js +1 -0
  211. package/.next/server/chunks/8868.js +1 -0
  212. package/.next/server/chunks/9048.js +1 -0
  213. package/.next/server/chunks/9058.js +1 -0
  214. package/.next/server/chunks/9062.js +1 -0
  215. package/.next/server/chunks/9094.js +1 -0
  216. package/.next/server/chunks/9098.js +1 -1
  217. package/.next/server/chunks/9099.js +1 -0
  218. package/.next/server/chunks/9171.js +287 -0
  219. package/.next/server/chunks/9181.js +1 -0
  220. package/.next/server/chunks/9293.js +1 -1
  221. package/.next/server/chunks/9478.js +1 -0
  222. package/.next/server/chunks/9494.js +141 -0
  223. package/.next/server/chunks/952.js +1 -0
  224. package/.next/server/chunks/9600.js +1 -0
  225. package/.next/server/chunks/9607.js +29 -0
  226. package/.next/server/chunks/9653.js +115 -0
  227. package/.next/server/chunks/9784.js +1 -0
  228. package/.next/server/chunks/9798.js +1 -0
  229. package/.next/server/chunks/9990.js +1 -0
  230. package/.next/server/edge-instrumentation.js +2 -0
  231. package/.next/server/edge-instrumentation.js.map +1 -0
  232. package/.next/server/functions-config-manifest.json +3 -3
  233. package/.next/server/instrumentation.js +1 -0
  234. package/.next/server/instrumentation.js.nft.json +1 -0
  235. package/.next/server/middleware-build-manifest.js +1 -1
  236. package/.next/server/middleware-manifest.json +6 -5
  237. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  238. package/.next/server/pages/500.html +1 -1
  239. package/.next/server/pages/_error.js +3 -3
  240. package/.next/server/server-reference-manifest.js +1 -1
  241. package/.next/server/server-reference-manifest.json +1 -1
  242. package/.next/static/chunks/3363-f417b308a8cd156d.js +1 -0
  243. package/.next/static/chunks/3686-0107521d2c14950c.js +1 -0
  244. package/.next/static/chunks/3695-3576767108de7f38.js +1 -0
  245. package/.next/static/chunks/4108.19abaa6d618295ed.js +1 -0
  246. package/.next/static/chunks/5933-4013a6dab4565b5e.js +1 -0
  247. package/.next/static/chunks/7425-9684ea815b4b1731.js +1 -0
  248. package/.next/static/chunks/7552-def8a17828891c8c.js +1 -0
  249. package/.next/static/chunks/8776-2df966dd98c68fd7.js +1 -0
  250. package/.next/static/chunks/app/layout-baad68d32b917b8f.js +1 -0
  251. package/.next/static/chunks/app/onboarding/page-b1b1e6a4467ed781.js +1 -0
  252. package/.next/static/chunks/app/page-556a2139313c3c71.js +1 -0
  253. package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-52223811258d07b2.js +1 -0
  254. package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-0df769f27549cd16.js +1 -0
  255. package/.next/static/chunks/app/roots/[id]/memory/{page-4edc11023d8a13fd.js → page-1f6bc3a624b141a5.js} +1 -1
  256. package/.next/static/chunks/app/roots/[id]/page-17493991b2d391b3.js +1 -0
  257. package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-a21fe3541418a80a.js +1 -0
  258. package/.next/static/chunks/app/roots/[id]/workflows/page-0952e5fb53d53c3e.js +1 -0
  259. package/.next/static/chunks/app/roots/new/{page-98d64261cc2ae2a1.js → page-4f571184c1856103.js} +1 -1
  260. package/.next/static/chunks/app/settings/page-8c0ad1c1856da988.js +1 -0
  261. package/.next/static/chunks/app/share/[id]/page-b27a0bc7b9c6cda9.js +1 -0
  262. package/.next/static/chunks/app/utilities/[scope]/[id]/page-0fe4c377098064d5.js +1 -0
  263. package/.next/static/chunks/app/utilities/page-445933dcd5a500ae.js +1 -0
  264. package/.next/static/chunks/{webpack-dbfe1e5d0f7f7a98.js → webpack-88066a85eb2d605f.js} +1 -1
  265. package/.next/trace +116 -90
  266. package/dist/lib/reflex/ids.js +66 -0
  267. package/dist/lib/reflex/ids.js.map +1 -0
  268. package/dist/lib/reflex/paths.js +26 -0
  269. package/dist/lib/reflex/paths.js.map +1 -1
  270. package/dist/lib/reflex/store/json-store.js +50 -0
  271. package/dist/lib/reflex/store/json-store.js.map +1 -0
  272. package/package.json +10 -6
  273. package/.next/server/chunks/133.js +0 -1
  274. package/.next/server/chunks/1358.js +0 -1
  275. package/.next/server/chunks/2389.js +0 -4
  276. package/.next/server/chunks/2787.js +0 -1
  277. package/.next/server/chunks/3240.js +0 -1
  278. package/.next/server/chunks/3295.js +0 -1
  279. package/.next/server/chunks/4842.js +0 -1
  280. package/.next/server/chunks/5319.js +0 -1
  281. package/.next/server/chunks/5543.js +0 -1
  282. package/.next/server/chunks/569.js +0 -1
  283. package/.next/server/chunks/6356.js +0 -3
  284. package/.next/server/chunks/7229.js +0 -2
  285. package/.next/server/chunks/7607.js +0 -1
  286. package/.next/server/chunks/8040.js +0 -1
  287. package/.next/server/chunks/8124.js +0 -1
  288. package/.next/server/chunks/8576.js +0 -7
  289. package/.next/server/chunks/9809.js +0 -1
  290. package/.next/server/chunks/9835.js +0 -1
  291. package/.next/static/chunks/2885-3b6efe9070ae7699.js +0 -1
  292. package/.next/static/chunks/334-e9ffb96d6720ee5b.js +0 -1
  293. package/.next/static/chunks/4108.a04c1e0b768f6392.js +0 -1
  294. package/.next/static/chunks/5371-f2503fe0dffea57d.js +0 -1
  295. package/.next/static/chunks/5744-eccd279a734c778c.js +0 -1
  296. package/.next/static/chunks/6568-e4d2de23d9f8d347.js +0 -1
  297. package/.next/static/chunks/6642-02be14d0b5ca62b7.js +0 -1
  298. package/.next/static/chunks/8566-5d4c89b722d9cee1.js +0 -1
  299. package/.next/static/chunks/8775-890699c74c28df61.js +0 -1
  300. package/.next/static/chunks/app/layout-48a6fb46c228b814.js +0 -1
  301. package/.next/static/chunks/app/onboarding/page-06103f281ff3f063.js +0 -1
  302. package/.next/static/chunks/app/page-eed31ba1b952cf24.js +0 -1
  303. package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-5fc17c5819406917.js +0 -1
  304. package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-a52b2005a7e538ca.js +0 -1
  305. package/.next/static/chunks/app/roots/[id]/page-0f0d498f4b4bd7bf.js +0 -1
  306. package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-f93d6b1bb29e79f0.js +0 -1
  307. package/.next/static/chunks/app/roots/[id]/workflows/page-562913d54bcd08d5.js +0 -1
  308. package/.next/static/chunks/app/settings/page-7a4d8a407fbe5ed8.js +0 -1
  309. package/.next/static/chunks/app/share/[id]/page-a0540dba09771e84.js +0 -1
  310. package/.next/static/chunks/app/utilities/[scope]/[id]/page-2cee9be029f211c6.js +0 -1
  311. package/.next/static/chunks/app/utilities/page-197156f16167514e.js +0 -1
  312. /package/.next/static/{kKiRbrTiD77WXduAvKNfN → EXoiX_YvMRCB6oNXqJnaz}/_buildManifest.js +0 -0
  313. /package/.next/static/{kKiRbrTiD77WXduAvKNfN → EXoiX_YvMRCB6oNXqJnaz}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8138],{3747:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},4959:(e,t,s)=>{"use strict";s.d(t,{BT:()=>l,Wu:()=>c,ZB:()=>o,Zp:()=>n,aR:()=>i,wL:()=>d});var a=s(4624);s(99356);var r=s(13506);function n(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,r.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...s})}function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...s})}function o(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...s})}function l(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",t),...s})}function c(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...s})}function d(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-footer",className:(0,r.cn)("flex items-center px-6 [.border-t]:pt-6",t),...s})}},5922:(e,t,s)=>{"use strict";s.d(t,{Dashboard:()=>eR});var a=s(4624),r=s(99356),n=s(49411),i=s(3747),o=s(56221),l=s(85253),c=s(63514),d=s(54400),m=s.n(d),u=s(41234),x=s(3239),h=s(86790),p=s(28310),g=s(4959);function f(e){let{rootId:t,activeGoals:s,runningAgents:r}=e,i=(0,n.c)("roots"),o=s.length+r.length;return(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{className:"pb-2 flex flex-row items-center justify-between space-y-0",children:[(0,a.jsxs)(g.ZB,{className:"text-sm flex items-center gap-2",children:[(0,a.jsx)(u.A,{className:"h-4 w-4 text-violet-600"}),i("activeGoals.title")]}),o>0&&(0,a.jsx)(p.E,{variant:"secondary",className:"text-[10px]",children:o})]}),(0,a.jsxs)(g.Wu,{className:"space-y-2",children:[0===o&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:i("activeGoals.empty")}),s.map(e=>(0,a.jsx)(m(),{href:"/roots/".concat(t,"/chat/").concat(e.topicId),className:"block rounded-md border bg-card hover:bg-accent/40 transition px-3 py-2",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-violet-600 mt-0.5 shrink-0"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-sm font-medium truncate flex-1 min-w-0",children:e.topicTitle}),e.running&&(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin text-violet-600 shrink-0"})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-2",children:e.goal}),(0,a.jsxs)("div",{className:"flex items-center gap-2 mt-1 text-[10px] text-muted-foreground",children:[(0,a.jsx)("span",{children:i("activeGoals.iterationLabel",{count:e.goalIterations})}),(0,a.jsx)("span",{children:"\xb7"}),(0,a.jsx)("span",{children:i("activeGoals.updatedLabel",{time:function(e,t){let s=Date.now()-Date.parse(e);if(!Number.isFinite(s)||s<0)return t("activeGoals.justNow");let a=Math.floor(s/6e4);if(a<1)return t("activeGoals.justNow");if(a<60)return t("activeGoals.minutesAgo",{count:a});let r=Math.floor(a/60);return r<24?t("activeGoals.hoursAgo",{count:r}):t("activeGoals.daysAgo",{count:Math.floor(r/24)})}(e.updatedAt,i)})})]})]})]})},e.topicId)),r.map(e=>(0,a.jsx)(m(),{href:"/roots/".concat(t,"/chat/").concat(e.topicId),className:"block rounded-md border bg-card hover:bg-accent/40 transition px-3 py-2",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(h.A,{className:"h-3.5 w-3.5 text-amber-600 mt-0.5 shrink-0"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-sm font-medium truncate flex-1 min-w-0",children:e.topicTitle}),(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin text-amber-600 shrink-0"}),(0,a.jsx)("span",{className:"text-[10px] text-muted-foreground",children:i("activeGoals.agentRunning")})]})]})},e.topicId))]})]})}var v=s(85924),b=s(3024),j=s(59145),y=s(31108);function w(e){let{rootId:t,items:s}=e,r=(0,n.c)("roots");return(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{className:"pb-2 flex flex-row items-center justify-between space-y-0",children:[(0,a.jsxs)(g.ZB,{className:"text-sm flex items-center gap-2",children:[(0,a.jsx)(v.A,{className:"h-4 w-4 text-amber-600"}),r("pendingApprovals.title")]}),s.length>0&&(0,a.jsx)(p.E,{variant:"secondary",className:"text-[10px]",children:s.length})]}),(0,a.jsxs)(g.Wu,{className:"space-y-2",children:[0===s.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:r("pendingApprovals.empty")}),s.map(e=>{var s;return(0,a.jsx)(m(),{href:"/roots/".concat(t,"/chat/").concat(e.topicId),className:"block rounded-md border bg-card hover:bg-accent/40 transition px-3 py-2",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(N,{kind:e.kind}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-sm font-medium truncate flex-1 min-w-0",children:e.summary}),(0,a.jsx)(p.E,{variant:"outline",className:"text-[10px] shrink-0",children:"permission"===(s=e.kind)?"permission":"question"===s?"question":"mcp-add"})]}),e.details&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-2",children:e.details}),(0,a.jsxs)("div",{className:"text-[10px] text-muted-foreground mt-1",children:["topic ",e.topicId.slice(0,12)," \xb7 ",function(e,t){let s=Date.now()-Date.parse(e);if(!Number.isFinite(s)||s<0)return t("pendingApprovals.justNow");let a=Math.floor(s/6e4);if(a<1)return t("pendingApprovals.justNow");if(a<60)return t("pendingApprovals.minutesAgo",{count:a});let r=Math.floor(a/60);return r<24?t("pendingApprovals.hoursAgo",{count:r}):t("pendingApprovals.daysAgo",{count:Math.floor(r/24)})}(e.ts,r)]})]})]})},"".concat(e.kind,":").concat(e.requestId))})]})]})}function N(e){let{kind:t}=e,s="h-3.5 w-3.5 mt-0.5 shrink-0";return"permission"===t?(0,a.jsx)(b.A,{className:"".concat(s," text-rose-600")}):"question"===t?(0,a.jsx)(j.A,{className:"".concat(s," text-sky-600")}):(0,a.jsx)(y.A,{className:"".concat(s," text-emerald-600")})}var k=s(49623),A=s(7911);let S=(0,A.createServerReference)("60b8c1fc8899729ae303afb4eb99d46e152c156fbe",A.callServer,void 0,A.findSourceMapURL,"readKbPreviewAction");function C(e){let{rootId:t,items:s}=e,i=(0,n.c)("roots"),[o,l]=(0,r.useState)({});return(0,r.useEffect)(()=>{let e=!1;return(async()=>{for(let a of s){if(o[a.rel])continue;let s=await S(t,a.rel);if(e)return;s.ok&&l(e=>({...e,[a.rel]:s.preview}))}})(),()=>{e=!0}},[t,s]),(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{className:"pb-2 flex flex-row items-center justify-between space-y-0",children:[(0,a.jsxs)(g.ZB,{className:"text-sm flex items-center gap-2",children:[(0,a.jsx)(k.A,{className:"h-4 w-4 text-emerald-700"}),i("recentKb.title")]}),s.length>0&&(0,a.jsx)(p.E,{variant:"secondary",className:"text-[10px]",children:s.length})]}),(0,a.jsxs)(g.Wu,{className:"space-y-2",children:[0===s.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:i("recentKb.empty")}),s.map(e=>{var s;return(0,a.jsx)(m(),{href:"/roots/".concat(t,"/kb/").concat(e.rel.split("/").map(encodeURIComponent).join("/")),className:"block rounded-md border bg-card hover:bg-accent/40 transition px-3 py-2",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(k.A,{className:"h-3.5 w-3.5 mt-0.5 shrink-0 text-emerald-700"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-sm font-medium truncate flex-1 min-w-0",children:e.title}),e.kind&&(0,a.jsx)(p.E,{variant:"outline",className:"text-[10px] shrink-0",children:e.kind})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-2",children:null!=(s=o[e.rel])?s:e.rel}),(0,a.jsxs)("div",{className:"text-[10px] text-muted-foreground mt-1",children:[function(e,t){let s=Date.now()-Date.parse(e);if(!Number.isFinite(s)||s<0)return t("recentKb.justNow");let a=Math.floor(s/6e4);if(a<1)return t("recentKb.justNow");if(a<60)return t("recentKb.minutesAgo",{count:a});let r=Math.floor(a/60);return r<24?t("recentKb.hoursAgo",{count:r}):t("recentKb.daysAgo",{count:Math.floor(r/24)})}(e.modifiedAt,i)," \xb7 ",(0,a.jsx)("span",{className:"font-mono",children:e.rel})]})]})]})},e.rel)})]})]})}var R=s(69285),M=s(45804);let U=(0,M.A)("Lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);var T=s(8096),D=s(54207),I=s(95265),E=s(17379);function P(e){let{rootId:t,cache:s}=e,c=(0,n.c)("roots"),[d,m]=(0,r.useState)(s),[u,h]=(0,r.useTransition)(),f=(0,R.useRouter)(),v=d&&Date.now()-Date.parse(d.generatedAt)>864e5;return(0,a.jsxs)(g.Zp,{className:"lg:col-span-2",children:[(0,a.jsxs)(g.aR,{className:"pb-2 flex flex-row items-center justify-between space-y-0",children:[(0,a.jsxs)(g.ZB,{className:"text-sm flex items-center gap-2",children:[(0,a.jsx)(U,{className:"h-4 w-4 text-amber-500"}),c("aiSuggestions.title"),v&&(0,a.jsx)(p.E,{variant:"outline",className:"text-[10px]",children:c("aiSuggestions.stale")})]}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>{h(async()=>{try{let s=await fetch("/api/roots/".concat(t,"/suggestions"),{method:"POST",cache:"no-store"}),a=await s.json();if(!a.ok){var e;o.oR.error(null!=(e=a.error)?e:c("aiSuggestions.regenerateFailed"));return}a.cache&&m(a.cache)}catch(e){o.oR.error(e instanceof Error?e.message:String(e))}})},disabled:u,className:"gap-1 h-7 text-xs",children:[u?(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(i.A,{className:"h-3 w-3"}),c("aiSuggestions.recompute")]})]}),(0,a.jsxs)(g.Wu,{className:"space-y-2",children:[!d&&!u&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:c("aiSuggestions.intro")}),d&&0===d.items.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:c("aiSuggestions.nothingUrgent")}),(0,a.jsx)("div",{className:"grid gap-2 md:grid-cols-2",children:null==d?void 0:d.items.map((e,s)=>(0,a.jsxs)("div",{className:"rounded-md border bg-card p-3 space-y-1.5",children:[(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(T.A,{className:"h-3.5 w-3.5 text-amber-500 mt-0.5 shrink-0"}),(0,a.jsx)("p",{className:"text-sm font-medium leading-snug flex-1",children:e.title})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground leading-relaxed",children:e.why}),(0,a.jsx)(L,{rootId:t,item:e,router:f})]},s))}),d&&(0,a.jsx)("p",{className:"text-[10px] text-muted-foreground pt-1",children:c.rich("aiSuggestions.generatedAt",{time:function(e,t){let s=Date.now()-Date.parse(e);if(!Number.isFinite(s)||s<0)return t("aiSuggestions.justNow");let a=Math.floor(s/6e4);if(a<1)return t("aiSuggestions.justNow");if(a<60)return t("aiSuggestions.minutesAgo",{count:a});let r=Math.floor(a/60);return r<24?t("aiSuggestions.hoursAgo",{count:r}):t("aiSuggestions.daysAgo",{count:Math.floor(r/24)})}(d.generatedAt,c),model:d.model,code:e=>(0,a.jsx)("code",{className:"font-mono",children:e})})})]})]})}function L(e){let{rootId:t,item:s,router:i}=e,[d,u]=(0,r.useTransition)(),h=(0,n.c)("roots"),{action:p}=s;if("none"===p.kind)return null;if("open-topic"===p.kind&&p.target)return(0,a.jsx)(l.$,{asChild:!0,size:"sm",variant:"outline",className:"h-7 text-xs gap-1",children:(0,a.jsxs)(m(),{href:"/roots/".concat(t,"/chat/").concat(p.target),children:[(0,a.jsx)(D.A,{className:"h-3 w-3"}),p.label]})});if("open-kb"===p.kind&&p.target){let e=p.target.split("/").map(encodeURIComponent).join("/");return(0,a.jsx)(l.$,{asChild:!0,size:"sm",variant:"outline",className:"h-7 text-xs gap-1",children:(0,a.jsxs)(m(),{href:"/roots/".concat(t,"/kb/").concat(e),children:[(0,a.jsx)(D.A,{className:"h-3 w-3"}),p.label]})})}return"send-message"===p.kind&&p.target?(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:()=>{u(async()=>{try{let s=await (0,E.g)(t,p.target,[],void 0);if(!s.ok){var e;o.oR.error(null!=(e=s.error)?e:h("aiSuggestions.sendFailed"));return}(0,c.$d)(c.Zi.topicsChanged(t)),i.push("/roots/".concat(t,"/chat/").concat(s.topicId))}catch(e){o.oR.error(e instanceof Error?e.message:String(e))}})},disabled:d,children:[d?(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(I.A,{className:"h-3 w-3"}),p.label]}):null}var z=s(39624),W=s(71789),Z=s(53732),F=s(43153),$=s(13561);let B=(0,A.createServerReference)("401249c2da75b1a04bf6b4e7d50b8a374f38483354",A.callServer,void 0,A.findSourceMapURL,"listSuggestionsAction"),O=(0,A.createServerReference)("4061705cba705c9f4e6b776653d48a00c99e5e5658",A.callServer,void 0,A.findSourceMapURL,"approveSuggestionAction"),K=(0,A.createServerReference)("40dd772b0a29a0f9fdc91eff8a18ec01a57288f90a",A.callServer,void 0,A.findSourceMapURL,"rejectSuggestionAction");var G=s(13506);let q={utility:z.A,research:W.A,widget:Z.A,goal:u.A,skill:T.A},H={utility:"text-emerald-600",research:"text-violet-600",widget:"text-blue-600",goal:"text-amber-600",skill:"text-pink-600"};function V(e){let{rootId:t}=e,s=(0,R.useRouter)(),[n,c]=(0,r.useState)([]),[d,m]=(0,r.useState)(!0),[u,h]=(0,r.useState)({}),[f,v]=(0,r.useTransition)(),b=(0,r.useCallback)(async()=>{let e=await B(t);m(!1),e.ok&&c(e.items)},[t]);return((0,r.useEffect)(()=>{b()},[b]),(0,r.useEffect)(()=>{let e=window.setInterval(()=>{"visible"===document.visibilityState&&b()},3e4);return()=>window.clearInterval(e)},[b]),d||0===n.length)?null:(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)(g.ZB,{className:"text-lg flex items-center gap-2",children:[(0,a.jsx)(U,{className:"h-4 w-4 text-amber-500"}),"Suggestions",(0,a.jsx)(p.E,{variant:"secondary",className:"ml-1",children:n.length})]}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>v(()=>b()),disabled:f,className:"h-7 gap-1",children:[(0,a.jsx)(i.A,{className:(0,G.cn)("h-3 w-3",f&&"animate-spin")}),"Refresh"]})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:"Hypotheses the agent put together from the onboarding chat. Approve to start a topic; dismiss to drop it (and remember you said no)."})]}),(0,a.jsx)(g.Wu,{className:"space-y-2",children:n.map(e=>{var r;let n=null!=(r=q[e.kind])?r:U,i=u[e.id];return(0,a.jsxs)("div",{className:"flex items-start gap-3 rounded-md border p-3",children:[(0,a.jsx)(n,{className:(0,G.cn)("h-4 w-4 mt-1 shrink-0",H[e.kind])}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-baseline gap-2 flex-wrap",children:[(0,a.jsx)("span",{className:"font-medium text-sm",children:e.title}),(0,a.jsx)(p.E,{variant:"outline",className:"text-[10px]",children:e.kind})]}),e.description&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-1 leading-snug",children:e.description}),e.prompt&&(0,a.jsx)("code",{className:"block mt-1 text-[10px] font-mono text-muted-foreground/70 truncate",children:e.prompt})]}),(0,a.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"default",disabled:!!i,onClick:()=>{h(t=>({...t,[e.id]:"approve"})),(async()=>{let a=await O({rootId:t,suggestionId:e.id});if(h(t=>({...t,[e.id]:null})),!a.ok){var r;o.oR.error(null!=(r=a.error)?r:"Failed to start topic");return}o.oR.success("Started: ".concat(e.title)),c(t=>t.filter(t=>t.id!==e.id)),s.push("/roots/".concat(t,"/chat/").concat(a.topicId))})()},className:"h-8 gap-1",children:["approve"===i?(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(F.A,{className:"h-3 w-3"}),"Approve"]}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"ghost",disabled:!!i,onClick:()=>{h(t=>({...t,[e.id]:"reject"})),(async()=>{let s=await K({rootId:t,suggestionId:e.id});if(h(t=>({...t,[e.id]:null})),!s.ok){var a;o.oR.error(null!=(a=s.error)?a:"Failed to reject");return}o.oR.success("Dismissed: ".concat(e.title)),c(t=>t.filter(t=>t.id!==e.id))})()},className:"h-8 gap-1 text-muted-foreground hover:text-destructive",children:["reject"===i?(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)($.A,{className:"h-3 w-3"}),"Dismiss"]})]})]},e.id)})})]})}var _=s(42713);let J=(0,M.A)("LibraryBig",[["rect",{width:"8",height:"18",x:"3",y:"3",rx:"1",key:"oynpb5"}],["path",{d:"M7 3v18",key:"bbkbws"}],["path",{d:"M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z",key:"1qboyk"}]]);var Y=s(41379);let Q=(0,A.createServerReference)("60310f733e6623bca6ecef83a1b2760e6e15d1bfc7",A.callServer,void 0,A.findSourceMapURL,"saveWidgetOrderAction"),X=(0,A.createServerReference)("609cde6b194368b9bdbceac978a32ccc7665d9c801",A.callServer,void 0,A.findSourceMapURL,"hideWidgetAction"),ee={sm:2,md:3,wide:6},et=["sys:active-goals","sys:pending","sys:recent-kb","sys:ai-suggestions"],es=[{id:"sys:active-goals",title:"Active goals & running agents",description:"Topics with an active /goal and a running orchestrator."},{id:"sys:pending",title:"Awaiting response",description:"Unanswered permission / question / mcp-add cards."},{id:"sys:recent-kb",title:"Recent in KB",description:"KB files modified in the last 72 hours."},{id:"sys:ai-suggestions",title:"What's next — Reflex suggestions",description:"Gemini-driven analysis of project state with actions."}],ea=(0,A.createServerReference)("702e817953319198ac14ef44e03c1bc9d2371c2c66",A.callServer,void 0,A.findSourceMapURL,"setWidgetSizeAction"),er=[{mode:"sm",label:"S",titleKey:"widgetsCommon.sizeSm"},{mode:"md",label:"M",titleKey:"widgetsCommon.sizeMd"},{mode:"wide",label:"W",titleKey:"widgetsCommon.sizeWide"}];function en(e){let{rootId:t,widgetId:s,mode:i,onChanged:l}=e,c=(0,n.c)("roots"),[d,m]=(0,r.useTransition)();return(0,a.jsx)("div",{role:"radiogroup","aria-label":c("widgetsCommon.sizeAria"),className:"inline-flex items-center rounded border bg-background/80 backdrop-blur overflow-hidden text-[10px] leading-none",children:er.map(e=>{let r=e.mode===i,n="sm"===e.mode?c("widgetsCommon.sizeSm"):"md"===e.mode?c("widgetsCommon.sizeMd"):c("widgetsCommon.sizeWide");return(0,a.jsx)("button",{type:"button",role:"radio","aria-checked":r,"aria-label":n,title:n,onClick:()=>{var a;(a=e.mode)!==i&&m(async()=>{let e=await ea(t,s,a);if(!e.ok){var r;o.oR.error(null!=(r=e.error)?r:c("widgetsCommon.sizeFailed"));return}l()})},disabled:d,className:["px-1.5 py-0.5 font-mono transition-colors disabled:opacity-50",r?"bg-violet-600 text-white":"text-muted-foreground hover:bg-accent hover:text-foreground"].join(" "),children:e.label},e.mode)})})}function ei(e){let t=ee[e];return 2===t?"lg:col-span-2":3===t?"lg:col-span-3":"lg:col-span-6"}let eo=(0,M.A)("GripVertical",[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]]);var el=s(76974),ec=s(72691),ed=s(22841),em=s(95933);let eu=(0,A.createServerReference)("785a3fc530b4b9452844c4e9be9729ecd302c625e3",A.callServer,void 0,A.findSourceMapURL,"patchWidgetDataAction"),ex=(0,A.createServerReference)("702640b0d7a80b2c79de1db2f162cc3b30ef6b46d2",A.callServer,void 0,A.findSourceMapURL,"setWidgetRefreshAction"),eh=(0,A.createServerReference)("6097b2d58154635edac7d702c3849af663de069be1",A.callServer,void 0,A.findSourceMapURL,"refreshWidgetNowAction");function ep(e){let{rootId:t,widget:s,mode:i,onHide:l,hiding:c,onLayoutChanged:d,dnd:u}=e,x=(0,n.c)("roots"),[h,f]=(0,r.useTransition)(),v=u.dragging===s.id,b=u.dropTarget===s.id&&!v,j=ei(i);return(0,a.jsxs)(g.Zp,{draggable:!0,onDragStart:e=>{e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",s.id),u.onDragStart(s.id)},onDragOver:e=>{e.preventDefault(),e.dataTransfer.dropEffect="move",u.dropTarget!==s.id&&u.onDragOver(s.id)},onDrop:e=>{e.preventDefault(),u.onDrop(s.id)},onDragEnd:()=>u.onDragEnd(),className:[j,"transition-all",v?"opacity-50":"",b?"ring-2 ring-violet-400 ring-offset-2 ring-offset-background":""].join(" "),children:[(0,a.jsxs)(g.aR,{className:"pb-2 flex flex-row items-start gap-2 space-y-0",children:[(0,a.jsx)(eo,{className:"h-3.5 w-3.5 text-muted-foreground/60 cursor-grab active:cursor-grabbing mt-1 shrink-0","aria-label":x("widgetsCommon.dragHandle")}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)(g.ZB,{className:"text-sm flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("span",{className:"truncate",children:s.title}),(0,a.jsx)(p.E,{variant:"outline",className:"text-[10px] font-mono shrink-0",children:s.kind})]}),s.description&&(0,a.jsx)("p",{className:"text-[11px] text-muted-foreground mt-0.5 line-clamp-2",children:s.description})]}),(0,a.jsxs)("div",{className:"flex items-center gap-1 -mt-0.5 shrink-0",children:[(0,a.jsx)(en,{rootId:t,widgetId:s.id,mode:i,onChanged:d}),s.sourceTopicId&&(0,a.jsx)(m(),{href:"/roots/".concat(t,"/chat/").concat(s.sourceTopicId),className:"p-1 rounded hover:bg-accent text-muted-foreground hover:text-foreground","aria-label":x("widgetsCommon.editViaTopicAria"),title:x("widgetsCommon.editViaTopicTitle"),children:(0,a.jsx)(el.A,{className:"h-3.5 w-3.5"})}),(0,a.jsx)("button",{type:"button",onClick:()=>f(async()=>{await Promise.resolve(),l(s.id)}),disabled:h||c,"aria-label":x("widgetsCommon.hideAria"),title:x("widgetsCommon.hideTitle"),className:"p-1 rounded hover:bg-destructive/15 text-muted-foreground hover:text-destructive",children:(0,a.jsx)($.A,{className:"h-3.5 w-3.5"})})]})]}),(0,a.jsxs)(g.Wu,{className:"space-y-3",children:[(0,em.v)(t,s.kind,s.data,{widgetId:s.id,onPatch:async e=>{let a=await eu(t,s.id,e);if(!a.ok){var r,n;throw o.oR.error(null!=(r=a.error)?r:x("widgetsCommon.savePatchFailed")),Error(null!=(n=a.error)?n:x("widgetsCommon.patchFailed"))}}}),(0,a.jsx)(eg,{rootId:t,widget:s})]})]})}function eg(e){var t,s;let{rootId:l,widget:c}=e,d=(0,n.c)("roots"),[m,u]=(0,r.useTransition)(),[x,h]=(0,r.useTransition)(),p=null!=(t=c.refresh)?t:"manual",g=null!=(s=c.lastRefreshAt)?s:c.updatedAt;return c.sourceTopicId?(0,a.jsxs)("div",{className:"flex items-center gap-2 pt-2 border-t text-[11px] text-muted-foreground",children:[(0,a.jsx)(ec.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)("span",{className:"shrink-0",children:d("widgetsCommon.updatedAt",{time:function(e,t){let s=Date.now()-Date.parse(e);if(!Number.isFinite(s)||s<0)return t("widgetsCommon.justNow");let a=Math.floor(s/6e4);if(a<1)return t("widgetsCommon.justNow");if(a<60)return t("widgetsCommon.minutesAgo",{count:a});let r=Math.floor(a/60);return r<24?t("widgetsCommon.hoursAgo",{count:r}):t("widgetsCommon.daysAgo",{count:Math.floor(r/24)})}(g,d)})}),(0,a.jsxs)("div",{className:"ml-auto flex items-center gap-1.5 shrink-0",children:[(0,a.jsxs)(ed.l6,{value:p,onValueChange:e=>{h(async()=>{var t,s;let a=await ex(l,c.id,e);a.ok?o.oR.success("manual"===e?d("widgetsCommon.autoRefreshOff"):d("widgetsCommon.cadenceSet",{cadence:(s=e,d("hourly"===s?"widgetsCommon.cadenceHourly":"daily"===s?"widgetsCommon.cadenceDaily":"weekly"===s?"widgetsCommon.cadenceWeekly":"widgetsCommon.cadenceManual"))})):o.oR.error(null!=(t=a.error)?t:d("widgetsCommon.cadenceFailed"))})},disabled:x,children:[(0,a.jsx)(ed.bq,{className:"h-6 text-[10px] gap-1 px-1.5 w-auto min-w-[110px]",children:(0,a.jsx)(ed.yv,{})}),(0,a.jsxs)(ed.gC,{children:[(0,a.jsx)(ed.eb,{value:"manual",children:d("widgetsCommon.manual")}),(0,a.jsx)(ed.eb,{value:"hourly",children:d("widgetsCommon.hourly")}),(0,a.jsx)(ed.eb,{value:"daily",children:d("widgetsCommon.daily")}),(0,a.jsx)(ed.eb,{value:"weekly",children:d("widgetsCommon.weekly")})]})]}),(0,a.jsxs)("button",{type:"button",onClick:()=>{u(async()=>{var e;let t=await eh(l,c.id);t.ok?o.oR.success(d("widgetsCommon.refreshStarted")):o.oR.error(null!=(e=t.error)?e:d("widgetsCommon.refreshFailed"))})},disabled:m,className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 hover:bg-accent text-foreground/80 hover:text-foreground",title:d("widgetsCommon.refreshNowTitle"),children:[(0,a.jsx)(i.A,{className:"h-3 w-3 ".concat(m?"animate-spin":"")}),d("widgetsCommon.refreshLabel")]})]})]}):null}var ef=s(84784),ev=s(41280),eb=s(46972),ej=s(80192),ey=s(52432);let ew=(0,A.createServerReference)("6050773cb97bcd29eaabe423feb83627267cf5d33d",A.callServer,void 0,A.findSourceMapURL,"deleteWidgetAction");function eN(e){let{rootId:t,open:s,onOpenChange:i,widgets:o,layout:c,onChanged:d}=e,m=(0,n.c)("roots");if((0,r.useEffect)(()=>{if(!s)return;let e=e=>{"Escape"===e.key&&i(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[s,i]),!s)return null;let u=new Set(c.hidden);return(0,a.jsxs)("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",onClick:e=>{e.target===e.currentTarget&&i(!1)},children:[(0,a.jsx)("div",{"aria-hidden":!0,className:"absolute inset-0 bg-background/80 backdrop-blur-sm",onClick:()=>i(!1)}),(0,a.jsxs)("div",{className:"relative bg-card border rounded-lg shadow-xl w-full max-w-2xl max-h-[80vh] flex flex-col",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 px-4 py-3 border-b",children:[(0,a.jsx)(J,{className:"h-4 w-4 text-violet-600"}),(0,a.jsx)("h2",{className:"text-sm font-medium flex-1",children:m("widgetsCommon.libraryTitle")}),(0,a.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",className:"h-7 w-7",onClick:()=>i(!1),children:(0,a.jsx)($.A,{className:"h-4 w-4"})})]}),(0,a.jsx)(ej.F,{className:"flex-1 min-h-0",children:(0,a.jsxs)("div",{className:"p-4 space-y-4",children:[(0,a.jsxs)("section",{className:"space-y-2",children:[(0,a.jsx)("h3",{className:"text-[11px] uppercase tracking-wider text-muted-foreground",children:m("widgetsCommon.systemWidgetsHeading")}),es.map(e=>(0,a.jsx)(ek,{rootId:t,id:e.id,title:e.title,description:e.description,badge:"system",badgeVariant:"default",hidden:u.has(e.id),canDelete:!1,onChanged:d},e.id))]}),(0,a.jsxs)("section",{className:"space-y-2",children:[(0,a.jsx)("h3",{className:"text-[11px] uppercase tracking-wider text-muted-foreground",children:m("widgetsCommon.userWidgetsHeading",{count:o.length})}),0===o.length&&(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:m("widgetsCommon.noUserWidgets")}),o.map(e=>{var s;return(0,a.jsx)(ek,{rootId:t,id:e.id,title:e.title,description:null!=(s=e.description)?s:"kind: ".concat(e.kind),badge:e.kind,badgeVariant:"outline",hidden:u.has(e.id),canDelete:!0,onChanged:d},e.id)})]})]})})]})]})}function ek(e){let{rootId:t,id:s,title:i,description:c,badge:d,badgeVariant:m,hidden:u,canDelete:x,onChanged:h}=e,g=(0,n.c)("roots"),[f,v]=(0,r.useTransition)();return(0,a.jsxs)("div",{className:"flex items-start gap-3 rounded-md border bg-card px-3 py-2",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("span",{className:"text-sm font-medium truncate",children:i}),(0,a.jsx)(p.E,{variant:m,className:"text-[10px] font-mono",children:d}),u&&(0,a.jsx)(p.E,{variant:"secondary",className:"text-[10px]",children:g("widgetsCommon.hidden")})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-2",children:c})]}),(0,a.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,a.jsx)(l.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>{v(async()=>{let e=u?await (0,ey.t)(t,s):await X(t,s);if(!e.ok)return void o.oR.error(e.error);h()})},disabled:f,className:"gap-1 h-7 text-xs",children:u?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(ef.A,{className:"h-3 w-3"}),g("widgetsCommon.show")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(ev.A,{className:"h-3 w-3"}),g("widgetsCommon.hide")]})}),x&&(0,a.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",onClick:()=>{confirm(g("widgetsCommon.deleteWidgetConfirm",{title:i}))&&v(async()=>{let e=await ew(t,s);if(!e.ok)return void o.oR.error(e.error);h()})},disabled:f,className:"h-7 w-7 text-muted-foreground hover:text-destructive",title:g("widgetsCommon.deleteForever"),children:(0,a.jsx)(eb.A,{className:"h-3.5 w-3.5"})})]})]})}function eA(e){let{rootId:t,widgets:s,layout:i,systemRenderers:c,snapshot:d,onLayoutChanged:m}=e,u=(0,n.c)("roots"),x=(0,r.useMemo)(()=>{let e=new Map;for(let t of s)e.set(t.id,t);return e},[s]),[h,p]=(0,r.useState)(i.order),[g,f]=(0,r.useState)(i.hidden),[,v]=(0,r.useTransition)(),[b,j]=(0,r.useState)(null),[y,w]=(0,r.useState)(null),[N,k]=(0,r.useState)(!1);eC(i.order,p),eC(i.hidden,f);let A=(0,r.useCallback)(e=>{p(e),v(async()=>{let s=await Q(t,e);s.ok?(p(s.layout.order),f(s.layout.hidden),m()):o.oR.error(s.error)})},[t,m]),S=(0,r.useCallback)(e=>{p(h.filter(t=>t!==e)),f(t=>[...new Set([e,...t])]),v(async()=>{let s=await X(t,e);if(!s.ok)return void o.oR.error(s.error);p(s.layout.order),f(s.layout.hidden),m()})},[t,h,m]),C={onDragStart:e=>j(e),onDragOver:e=>w(e),onDrop:e=>{if(j(null),w(null),!b||b===e)return;let t=[...h],s=t.indexOf(b),a=t.indexOf(e);s<0||a<0||(t.splice(s,1),t.splice(a,0,b),A(t))},onDragEnd:()=>{j(null),w(null)},dragging:b,dropTarget:y};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h2",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:u("widgetsCommon.projectWidgetsTitle")}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:u("widgetsCommon.projectWidgetsHint")})]}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"outline",onClick:()=>k(!0),className:"gap-1 h-8",children:[(0,a.jsx)(J,{className:"h-3.5 w-3.5"}),u("widgetsCommon.library",{count:g.length})]})]}),0===h.length&&(0,a.jsxs)("div",{className:"rounded-md border border-dashed bg-muted/20 p-6 text-center space-y-2",children:[(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:u.rich("widgetsCommon.emptyDashboard",{example:()=>(0,a.jsx)("em",{children:u("widgetsCommon.emptyDashboardExample")})})}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>k(!0),className:"gap-1",children:[(0,a.jsx)(Y.A,{className:"h-3 w-3"}),u("widgetsCommon.restoreSystem")]})]}),(0,a.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-6 gap-4",children:h.map(e=>{var s,r;let n=x.get(e),o=null==(s=i.sizes)?void 0:s[e],l=null!=o?o:(null==(r=null==n?void 0:n.size)?void 0:r.mode)?r.mode:(null==r?void 0:r.cols)===1?"sm":(null==r?void 0:r.cols)===2?"md":(null==r?void 0:r.cols)===3?"wide":"md";return et.includes(e)?(0,a.jsx)(eS,{rootId:t,id:e,node:c[e],onHide:S,dnd:C,mode:l,onLayoutChanged:m},e):n?(0,a.jsx)(ep,{rootId:t,widget:n,mode:l,onHide:S,hiding:!1,dnd:C,onLayoutChanged:m},e):null})}),(0,a.jsx)(eN,{open:N,onOpenChange:k,rootId:t,widgets:s,layout:{order:h,hidden:g},onChanged:()=>{m()}})]})}function eS(e){let{rootId:t,id:s,node:r,onHide:i,dnd:o,mode:l,onLayoutChanged:c}=e,d=(0,n.c)("roots"),m=o.dragging===s,u=o.dropTarget===s&&!m,x=ei(l);return(0,a.jsxs)("div",{draggable:!0,onDragStart:e=>{e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",s),o.onDragStart(s)},onDragOver:e=>{e.preventDefault(),e.dataTransfer.dropEffect="move",o.dropTarget!==s&&o.onDragOver(s)},onDrop:e=>{e.preventDefault(),o.onDrop(s)},onDragEnd:()=>o.onDragEnd(),className:[x,"relative group/sys transition-all",m?"opacity-50":"",u?"ring-2 ring-violet-400 ring-offset-2 ring-offset-background rounded-lg":""].join(" "),children:[r,(0,a.jsxs)("div",{className:"absolute top-2 right-2 opacity-0 group-hover/sys:opacity-100 transition-opacity flex items-center gap-1 bg-background/85 backdrop-blur rounded p-0.5",children:[(0,a.jsx)(en,{rootId:t,widgetId:s,mode:l,onChanged:c}),(0,a.jsx)("button",{type:"button",onClick:()=>i(s),"aria-label":d("widgetsCommon.hideAria"),title:d("widgetsCommon.hideSystemTitle"),className:"p-1 rounded hover:bg-destructive/15 text-muted-foreground hover:text-destructive",children:"\xd7"})]})]})}function eC(e,t){(0,r.useMemo)(()=>{t(e)},[JSON.stringify(e)])}function eR(e){let{rootId:t,initialSnapshot:s}=e,d=(0,n.c)("roots"),[m,u]=(0,r.useState)(s),[x,h]=(0,r.useTransition)(),p=(0,r.useCallback)(()=>{h(async()=>{try{let s=await fetch("/api/roots/".concat(t,"/dashboard"),{cache:"no-store"}),a=await s.json();if(!a.ok||!a.snapshot){var e;o.oR.error(null!=(e=a.error)?e:d("dashboard.refreshFailed"));return}u(a.snapshot)}catch(e){o.oR.error(e instanceof Error?e.message:String(e))}})},[t,d]);(0,c.S9)(c.Zi.topicsChanged(t),p),(0,c.S9)(c.Zi.kbChanged(t),p),(0,r.useEffect)(()=>{let e=window.setInterval(()=>{"visible"===document.visibilityState&&p()},3e4);return()=>window.clearInterval(e)},[p]);let g={"sys:active-goals":(0,a.jsx)(f,{rootId:t,activeGoals:m.activeGoals,runningAgents:m.runningAgents}),"sys:pending":(0,a.jsx)(w,{rootId:t,items:m.pendingApprovals}),"sys:recent-kb":(0,a.jsx)(C,{rootId:t,items:m.recentKb}),"sys:ai-suggestions":(0,a.jsx)(P,{rootId:t,cache:m.suggestions})};return(0,a.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto",children:(0,a.jsxs)("div",{className:"p-6 space-y-5 max-w-6xl mx-auto",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h2",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:d("dashboard.projectOverview")}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:d("dashboard.projectOverviewHint")})]}),(0,a.jsxs)(l.$,{type:"button",size:"sm",variant:"ghost",onClick:p,disabled:x,className:"gap-1 h-8",children:[(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 ".concat(x?"animate-spin":"")}),d("dashboard.refresh")]})]}),(0,a.jsx)(V,{rootId:t}),(0,a.jsx)(eA,{rootId:t,widgets:m.widgets,layout:m.layout,systemRenderers:g,snapshot:m,onLayoutChanged:p}),(0,a.jsx)(_.MemoryEditor,{scope:"project",rootId:t,title:d("dashboard.memoryTitle"),description:d("dashboard.memoryHint")})]})})}},7530:(e,t,s)=>{Promise.resolve().then(s.bind(s,30945)),Promise.resolve().then(s.bind(s,24276)),Promise.resolve().then(s.bind(s,65566)),Promise.resolve().then(s.bind(s,29831)),Promise.resolve().then(s.bind(s,8190)),Promise.resolve().then(s.bind(s,5922)),Promise.resolve().then(s.bind(s,53443)),Promise.resolve().then(s.bind(s,91074)),Promise.resolve().then(s.bind(s,96253)),Promise.resolve().then(s.bind(s,28050)),Promise.resolve().then(s.bind(s,94904)),Promise.resolve().then(s.bind(s,13270)),Promise.resolve().then(s.bind(s,99730)),Promise.resolve().then(s.bind(s,89146)),Promise.resolve().then(s.bind(s,19078)),Promise.resolve().then(s.bind(s,67854)),Promise.resolve().then(s.bind(s,69050)),Promise.resolve().then(s.bind(s,63739)),Promise.resolve().then(s.bind(s,33976)),Promise.resolve().then(s.bind(s,12537)),Promise.resolve().then(s.bind(s,97485)),Promise.resolve().then(s.bind(s,41923)),Promise.resolve().then(s.bind(s,73868)),Promise.resolve().then(s.bind(s,53511)),Promise.resolve().then(s.bind(s,2018)),Promise.resolve().then(s.bind(s,18487)),Promise.resolve().then(s.bind(s,98346)),Promise.resolve().then(s.bind(s,14884)),Promise.resolve().then(s.bind(s,85314)),Promise.resolve().then(s.bind(s,17280)),Promise.resolve().then(s.bind(s,8855)),Promise.resolve().then(s.bind(s,86631)),Promise.resolve().then(s.bind(s,2604)),Promise.resolve().then(s.bind(s,27237)),Promise.resolve().then(s.bind(s,49455)),Promise.resolve().then(s.bind(s,39211)),Promise.resolve().then(s.bind(s,56360)),Promise.resolve().then(s.t.bind(s,54400,23))},23262:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]])},24185:(e,t,s)=>{"use strict";s.d(t,{B:()=>r});var a=s(7911);let r=(0,a.createServerReference)("00156d4ff7dcdf419f9c3945e838a4d906b7336fa5",a.callServer,void 0,a.findSourceMapURL,"listCuratedAction")},24276:(e,t,s)=>{"use strict";s.d(t,{RemoveRootButton:()=>u});var a=s(4624),r=s(99356),n=s(46972),i=s(56221),o=s(69285),l=s(85253),c=s(7911);let d=(0,c.createServerReference)("404dd7dcf3833d3e58202b3ccd7942609aada8053a",c.callServer,void 0,c.findSourceMapURL,"removeRootAction");var m=s(63514);function u(e){let{id:t,path:s,redirectHome:c}=e,[u,x]=(0,r.useTransition)(),h=(0,o.useRouter)();return(0,a.jsx)(l.$,{variant:"ghost",size:"sm",disabled:u,title:"Delete Space",onClick:()=>{var e;confirm("Delete this Space?\n\n"+"Path: ".concat(s,"\n\n")+"This wipes the .reflex/ folder (KB, topics, memory, "+'suggestions, audit) and removes mentions of "'.concat(null!=(e=s.split("/").pop())?e:s,'" from global memory.\n\n')+"Your own files in the folder are NOT touched.\n\nThis cannot be undone.")&&x(async()=>{let e=await d(t);if(e.ok)i.oR.success("Space deleted"),(0,m.$d)(m.Zi.rootsChanged),c&&h.push("/");else{var s;i.oR.error(null!=(s=e.error)?s:"Failed to delete")}})},children:(0,a.jsx)(n.A,{className:"h-4 w-4 text-muted-foreground"})})}},29831:(e,t,s)=>{"use strict";s.d(t,{AddUtilityButton:()=>S});var a=s(4624),r=s(99356),n=s(54400),i=s.n(n),o=s(69285),l=s(49411),c=s(39624);let d=(0,s(45804).A)("CircleArrowUp",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 12-4-4-4 4",key:"177agl"}],["path",{d:"M12 16V8",key:"1sbj14"}]]);var m=s(13561),u=s(3239),x=s(39783),h=s(46972),p=s(43153),g=s(57751),f=s(56221),v=s(85253),b=s(24185),j=s(7911);let y=(0,j.createServerReference)("40ec40d29c8885be5bf44c315bc9964105cb1cce3d",j.callServer,void 0,j.findSourceMapURL,"checkUtilityUpdatesAction"),w=(0,j.createServerReference)("40c8515f18e56d8e1e4bd9826205b8e65646242f82",j.callServer,void 0,j.findSourceMapURL,"applyUtilityUpdateAction");var N=s(75257),k=s(49970),A=s(63514);function S(e){let{rootId:t,installed:s}=e,n=(0,l.c)("roots"),[j,S]=(0,r.useState)(!1),[C,R]=(0,r.useState)([]),[M,U]=(0,r.useState)(!1),[T,D]=(0,r.useState)(null),[I,E]=(0,r.useTransition)(),[P,L]=(0,r.useState)([]),z=(0,r.useRef)(null),W=(0,o.useRouter)(),Z=new Set(s.map(e=>e.id)),F=s.filter(e=>"project"===e.scope),$=new Map(P.map(e=>[e.id,e]));return(0,r.useEffect)(()=>{if(!j)return;let e=e=>{var t;(null==(t=z.current)?void 0:t.contains(e.target))||S(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[j]),(0,r.useEffect)(()=>{!j||C.length>0||M||(U(!0),(async()=>{try{let e=await (0,b.B)();R(e.items)}catch(e){f.oR.error(n("addUtility.loadCatalogFailed"))}finally{U(!1)}})())},[j,C.length,M]),(0,r.useEffect)(()=>{j&&0!==s.length&&(async()=>{let e=await y({rootId:t});e.ok&&L(e.updates)})()},[j,s.length,t]),(0,a.jsxs)("div",{className:"relative",ref:z,children:[(0,a.jsxs)(v.$,{type:"button",variant:"ghost",size:"sm",className:"gap-1",onClick:()=>S(e=>!e),title:n("addUtility.buttonTitle"),children:[(0,a.jsx)(c.A,{className:"h-4 w-4"}),n("addUtility.buttonLabel"),F.length>0&&(0,a.jsx)("span",{className:"ml-1 text-[10px] rounded-full bg-violet-100 text-violet-700 px-1.5",children:F.length}),P.length>0&&(0,a.jsxs)("span",{className:"ml-0.5 text-[10px] rounded-full bg-amber-100 text-amber-800 px-1.5 inline-flex items-center gap-0.5",title:n("addUtility.updatesTitle",{count:P.length}),children:[(0,a.jsx)(d,{className:"h-2.5 w-2.5"}),P.length]})]}),j&&(0,a.jsxs)("div",{className:"absolute right-0 top-full mt-1 z-30 w-[440px] max-h-[75vh] overflow-y-auto rounded-lg border bg-popover shadow-lg",children:[(0,a.jsxs)("div",{className:"sticky top-0 bg-popover flex items-center gap-2 px-3 py-2 border-b",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-violet-600"}),(0,a.jsx)("span",{className:"text-xs font-medium",children:n("addUtility.popoverTitle")}),(0,a.jsx)("button",{type:"button",onClick:()=>S(!1),className:"ml-auto p-0.5 rounded hover:bg-accent",children:(0,a.jsx)(m.A,{className:"h-3 w-3"})})]}),F.length>0&&(0,a.jsxs)("section",{className:"p-2 border-b",children:[(0,a.jsx)("div",{className:"px-1 text-[10px] uppercase tracking-wider text-muted-foreground mb-1.5",children:n("addUtility.installedInProject")}),(0,a.jsx)("ul",{className:"space-y-1",children:F.map(e=>{let s=$.get(e.id);return(0,a.jsxs)("li",{className:"flex items-center gap-1.5 rounded-md border bg-card px-2 py-1.5 text-xs",children:[(0,a.jsxs)("span",{className:"flex-1 min-w-0",children:[(0,a.jsx)("div",{className:"truncate font-medium",children:e.name}),s&&(0,a.jsxs)("div",{className:"text-[10px] text-amber-700 inline-flex items-center gap-0.5",children:[(0,a.jsx)(d,{className:"h-2.5 w-2.5"}),s.currentVersion," → ",s.latestVersion]})]}),s&&(0,a.jsxs)("button",{type:"button",onClick:()=>{D(s.id),E(async()=>{let e=await w({...s,rootId:t});if(D(null),!e.ok)return void f.oR.error(e.error);f.oR.success(n("addUtility.applyUpdateSuccess",{name:s.name,from:s.currentVersion,to:e.newVersion})),L(e=>e.filter(e=>e.id!==s.id)),(0,A.$d)(A.Zi.kbChanged(t)),W.refresh()})},disabled:I&&T===e.id,className:"text-[11px] rounded bg-amber-600 px-2 py-1 text-white hover:bg-amber-700 disabled:opacity-50 inline-flex items-center gap-0.5",title:n("addUtility.applyUpdateTitle"),children:[I&&T===e.id?(0,a.jsx)(u.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(d,{className:"h-3 w-3"}),n("addUtility.updateAction")]}),(0,a.jsx)(i(),{href:"/utilities/".concat(e.scope,"/").concat(e.id,"?rootId=").concat(encodeURIComponent(t)),className:"p-1 rounded hover:bg-accent text-muted-foreground hover:text-foreground",title:n("addUtility.openAction"),children:(0,a.jsx)(x.A,{className:"h-3 w-3"})}),(0,a.jsx)("button",{type:"button",onClick:()=>{confirm(n("addUtility.removeConfirm",{name:e.name}))&&(D(e.id),E(async()=>{let s=await (0,k.j)(e.scope,e.id,"project"===e.scope?t:void 0);if(D(null),!s.ok){var a;f.oR.error(null!=(a=s.error)?a:n("addUtility.removeFailed"));return}f.oR.success(n("addUtility.removeSuccess",{name:e.name})),(0,A.$d)(A.Zi.kbChanged(t)),W.refresh()}))},disabled:I&&T===e.id,className:"p-1 rounded hover:bg-destructive/15 text-muted-foreground hover:text-destructive disabled:opacity-50",title:n("addUtility.removeAction"),children:I&&T===e.id?(0,a.jsx)(u.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(h.A,{className:"h-3 w-3"})})]},e.id)})})]}),(0,a.jsxs)("section",{className:"p-2",children:[(0,a.jsx)("div",{className:"px-1 text-[10px] uppercase tracking-wider text-muted-foreground mb-1.5",children:n("addUtility.catalog")}),M?(0,a.jsxs)("div",{className:"px-2 py-4 text-xs text-muted-foreground flex items-center gap-1.5",children:[(0,a.jsx)(u.A,{className:"h-3 w-3 animate-spin"}),n("addUtility.loading")]}):0===C.length?(0,a.jsx)("p",{className:"px-2 py-4 text-xs text-muted-foreground",children:n("addUtility.catalogEmpty")}):(0,a.jsx)("ul",{className:"space-y-1",children:C.map(e=>{let s=Z.has(e.id),r=T===e.id&&I;return(0,a.jsx)("li",{className:"rounded-md border bg-card px-2 py-2",children:(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)("span",{className:"text-xl leading-none",children:e.emoji}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{className:"font-medium text-sm",children:e.name}),(0,a.jsx)("p",{className:"text-[11px] text-muted-foreground leading-snug",children:e.description})]}),s?(0,a.jsxs)("span",{className:"text-[10px] text-emerald-700 inline-flex items-center gap-0.5",children:[(0,a.jsx)(p.A,{className:"h-3 w-3"})," ",n("addUtility.already")]}):(0,a.jsxs)("button",{type:"button",onClick:()=>{D(e.id),E(async()=>{var s;let a=null!=(s=e.suggestedScope)?s:"global",r=await (0,N.g)({github:e.github,scope:a,..."project"===a?{rootId:t}:{}});if(D(null),!r.ok)return void f.oR.error(r.error);f.oR.success(n("addUtility.installSuccess",{name:e.name})),(0,A.$d)(A.Zi.kbChanged(t)),W.refresh()})},disabled:r||I,className:"text-[11px] rounded bg-violet-600 px-2 py-1 text-white hover:bg-violet-700 disabled:opacity-50 inline-flex items-center gap-0.5",children:[r?(0,a.jsx)(u.A,{className:"h-3 w-3 animate-spin"}):(0,a.jsx)(g.A,{className:"h-3 w-3"}),n("addUtility.add")]})]})},e.id)})})]})]})]})}},30441:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Share2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]])},39160:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]])},41280:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("EyeOff",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},42713:(e,t,s)=>{"use strict";s.d(t,{MemoryEditor:()=>v});var a=s(4624),r=s(99356),n=s(56221),i=s(3239),o=s(85924),l=s(65714),c=s(46972),d=s(85253),m=s(4959),u=s(71651),x=s(13506),h=s(7911);let p=(0,h.createServerReference)("40a0f1cb3cfa854c9fa23ff252a1acbb859444bdbc",h.callServer,void 0,h.findSourceMapURL,"loadMemoryAction"),g=(0,h.createServerReference)("4053d631a3eb639fb38a7579a6d925b93f731ae43b",h.callServer,void 0,h.findSourceMapURL,"saveMemoryFileAction"),f=(0,h.createServerReference)("408f4c7e74a09fb767274f949eb863c9c6e18b49f4",h.callServer,void 0,h.findSourceMapURL,"wipeMemoryAction");function v(e){let{scope:t,rootId:s,title:n,description:l,allowWipe:c}=e,[d,u]=(0,r.useState)([]),[x,h]=(0,r.useState)(!0),[g,f]=(0,r.useState)(null),v=(0,r.useCallback)(async()=>{h(!0);let e=await p(s?{scope:t,rootId:s}:{scope:t});if(h(!1),!e.ok)return void f(e.error);f(null),u(e.files)},[t,s]);return(0,r.useEffect)(()=>{v()},[v]),(0,a.jsxs)(m.Zp,{children:[(0,a.jsx)(m.aR,{children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(m.ZB,{className:"text-lg",children:n}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:l})]}),c&&d.length>0&&(0,a.jsx)(j,{scope:t,rootId:s,onWiped:v})]})}),(0,a.jsx)(m.Wu,{children:x?(0,a.jsxs)("div",{className:"text-sm text-muted-foreground flex items-center gap-2",children:[(0,a.jsx)(i.A,{className:"h-3 w-3 animate-spin"})," Loading…"]}):g?(0,a.jsxs)("p",{className:"text-sm text-destructive flex items-center gap-2",children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),g]}):(0,a.jsx)("div",{className:"space-y-4",children:d.map(e=>(0,a.jsx)(b,{snapshot:e,scope:t,rootId:s,onSaved:e=>u(t=>t.map(t=>t.file===e.file?e:t))},e.file))})})]})}function b(e){let{snapshot:t,scope:s,rootId:o,onSaved:c}=e,[m,h]=(0,r.useState)(t.content),[p,f]=(0,r.useTransition)();(0,r.useEffect)(()=>{h(t.content)},[t.content]);let v=m.trim(),b=v?v.split("\n").length:0,j=b>t.cap,y=b>.9*t.cap,w=m!==t.content;return(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-baseline justify-between gap-2",children:[(0,a.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,a.jsx)("span",{className:"font-mono text-sm font-semibold",children:t.file}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t.description})]}),(0,a.jsxs)("span",{className:(0,x.cn)("text-xs tabular-nums",j?"text-destructive font-medium":y?"text-amber-600":"text-muted-foreground"),children:[b,"/",t.cap]})]}),(0,a.jsx)(u.T,{value:m,onChange:e=>h(e.target.value),rows:Math.min(t.cap+2,Math.max(3,b+1)),placeholder:"Empty",className:"font-mono text-xs"}),(0,a.jsx)("div",{className:"flex items-center justify-end gap-2",children:(0,a.jsxs)(d.$,{type:"button",size:"sm",variant:w?"default":"ghost",disabled:!w||p||j,onClick:()=>{if(j)return void n.oR.error("".concat(t.file," exceeds ").concat(t.cap,"-line cap (").concat(b,"). Trim before saving."));f(async()=>{let e=await g({scope:s,...o?{rootId:o}:{},file:t.file,content:v});if(!e.ok){var a;n.oR.error(null!=(a=e.error)?a:"Save failed");return}n.oR.success("Saved ".concat(t.file)),c({...t,content:v,lines:e.lines})})},children:[p?(0,a.jsx)(i.A,{className:"mr-1 h-3 w-3 animate-spin"}):(0,a.jsx)(l.A,{className:"mr-1 h-3 w-3"}),"Save"]})})]})}function j(e){let{scope:t,rootId:s,onWiped:i}=e,[o,l]=(0,r.useTransition)();return(0,a.jsxs)(d.$,{type:"button",size:"sm",variant:"ghost",disabled:o,onClick:()=>{confirm("Erase ALL memory at this scope? Cannot be undone.")&&l(async()=>{let e=await f(s?{scope:t,rootId:s}:{scope:t});if(!e.ok){var a;n.oR.error(null!=(a=e.error)?a:"Wipe failed");return}n.oR.success("Memory wiped"),await i()})},className:"text-destructive hover:text-destructive",children:[(0,a.jsx)(c.A,{className:"mr-1 h-3 w-3"}),"Wipe all"]})}},49970:(e,t,s)=>{"use strict";s.d(t,{j:()=>r});var a=s(7911);let r=(0,a.createServerReference)("70f40a96d887f43b5bfbffc1d69d8be5d2911ae755",a.callServer,void 0,a.findSourceMapURL,"removeUtilityAction")},52432:(e,t,s)=>{"use strict";s.d(t,{t:()=>r});var a=s(7911);let r=(0,a.createServerReference)("600091ad741ecc4a0b598b7fe3fb5b6cba904934fe",a.callServer,void 0,a.findSourceMapURL,"restoreWidgetAction")},53443:(e,t,s)=>{"use strict";s.d(t,{RunInitButton:()=>u});var a=s(4624),r=s(99356),n=s(3239),i=s(67805),o=s(56221),l=s(85253),c=s(7911);let d=(0,c.createServerReference)("707594d4b9ba1ae8cf609e3d5d17c1e1a4fe960566",c.callServer,void 0,c.findSourceMapURL,"runInitAction");var m=s(63514);function u(e){let{rootPath:t,rootId:s}=e,[c,u]=(0,r.useTransition)();return(0,a.jsx)(l.$,{onClick:()=>u(async()=>{let e=o.oR.loading("Running agent — this can take a minute or two…"),a=await d(t,s,!1);if(o.oR.dismiss(e),a.ok)o.oR.success("Init complete"),(0,m.$d)(m.Zi.kbChanged(s)),(0,m.$d)(m.Zi.rootsChanged);else{var r;o.oR.error(null!=(r=a.error)?r:"Init failed")}}),disabled:c,children:c?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.A,{className:"mr-2 h-4 w-4 animate-spin"})," Running…"]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.A,{className:"mr-2 h-4 w-4"})," Run init"]})})}},57751:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]])},59728:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])},67805:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},72691:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])},75257:(e,t,s)=>{"use strict";s.d(t,{g:()=>r});var a=s(7911);let r=(0,a.createServerReference)("406160ed0783d7658804c8ded217020abc0e118a8a",a.callServer,void 0,a.findSourceMapURL,"installCuratedAction")},84784:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},85924:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},86790:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(45804).A)("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]])}},e=>{e.O(0,[4400,4678,9776,6785,3335,9411,7425,3686,7552,3695,5933,3363,4933,146,7358],()=>e(e.s=7530)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6388],{3239:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},13506:(e,t,s)=>{"use strict";s.d(t,{cn:()=>i});var r=s(47989),a=s(55701);function i(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,a.QP)((0,r.$)(t))}},15523:(e,t,s)=>{"use strict";s.d(t,{p:()=>i});var r=s(4624);s(99356);var a=s(13506);function i(e){let{className:t,type:s,...i}=e;return(0,r.jsx)("input",{type:s,"data-slot":"input",className:(0,a.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...i})}},22841:(e,t,s)=>{"use strict";s.d(t,{bq:()=>u,eb:()=>m,gC:()=>p,l6:()=>d,yv:()=>c});var r=s(4624);s(99356);var a=s(69709),i=s(43153),n=s(59728),l=s(85314),o=s(13506);function d(e){let{...t}=e;return(0,r.jsx)(l.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,r.jsx)(l.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:s="default",children:i,...n}=e;return(0,r.jsxs)(l.Trigger,{"data-slot":"select-trigger","data-size":s,className:(0,o.cn)("flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",t),...n,children:[i,(0,r.jsx)(l.Icon,{asChild:!0,children:(0,r.jsx)(a.A,{className:"size-4 opacity-50"})})]})}function p(e){let{className:t,children:s,position:a="item-aligned",align:i="center",...n}=e;return(0,r.jsx)(l.Portal,{children:(0,r.jsxs)(l.Content,{"data-slot":"select-content",className:(0,o.cn)("relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95","popper"===a&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:a,align:i,...n,children:[(0,r.jsx)(h,{}),(0,r.jsx)(l.Viewport,{className:(0,o.cn)("p-1","popper"===a&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:s}),(0,r.jsx)(x,{})]})})}function m(e){let{className:t,children:s,...a}=e;return(0,r.jsxs)(l.Item,{"data-slot":"select-item",className:(0,o.cn)("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...a,children:[(0,r.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,r.jsx)(l.ItemIndicator,{children:(0,r.jsx)(i.A,{className:"size-4"})})}),(0,r.jsx)(l.ItemText,{children:s})]})}function h(e){let{className:t,...s}=e;return(0,r.jsx)(l.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...s,children:(0,r.jsx)(n.A,{className:"size-4"})})}function x(e){let{className:t,...s}=e;return(0,r.jsx)(l.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...s,children:(0,r.jsx)(a.A,{className:"size-4"})})}},28310:(e,t,s)=>{"use strict";s.d(t,{E:()=>o});var r=s(4624);s(99356);var a=s(60621),i=s(50362),n=s(13506);let l=(0,a.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:s="default",asChild:a=!1,...o}=e,d=a?i.bL:"span";return(0,r.jsx)(d,{"data-slot":"badge","data-variant":s,className:(0,n.cn)(l({variant:s}),t),...o})}},41379:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},43153:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},46972:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]])},52515:(e,t,s)=>{Promise.resolve().then(s.bind(s,83593)),Promise.resolve().then(s.bind(s,91074)),Promise.resolve().then(s.bind(s,96253)),Promise.resolve().then(s.bind(s,28050)),Promise.resolve().then(s.bind(s,94904)),Promise.resolve().then(s.bind(s,13270)),Promise.resolve().then(s.bind(s,99730)),Promise.resolve().then(s.bind(s,89146)),Promise.resolve().then(s.bind(s,19078)),Promise.resolve().then(s.bind(s,67854)),Promise.resolve().then(s.bind(s,69050)),Promise.resolve().then(s.bind(s,63739)),Promise.resolve().then(s.bind(s,33976)),Promise.resolve().then(s.bind(s,12537)),Promise.resolve().then(s.bind(s,97485)),Promise.resolve().then(s.bind(s,41923)),Promise.resolve().then(s.bind(s,73868)),Promise.resolve().then(s.bind(s,53511)),Promise.resolve().then(s.bind(s,2018)),Promise.resolve().then(s.bind(s,18487)),Promise.resolve().then(s.bind(s,98346)),Promise.resolve().then(s.bind(s,14884)),Promise.resolve().then(s.bind(s,85314)),Promise.resolve().then(s.bind(s,17280)),Promise.resolve().then(s.bind(s,8855)),Promise.resolve().then(s.bind(s,86631)),Promise.resolve().then(s.bind(s,2604)),Promise.resolve().then(s.bind(s,27237)),Promise.resolve().then(s.bind(s,49455)),Promise.resolve().then(s.bind(s,39211)),Promise.resolve().then(s.bind(s,56360)),Promise.resolve().then(s.t.bind(s,54400,23))},59728:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])},60621:(e,t,s)=>{"use strict";s.d(t,{F:()=>n});var r=s(47989);let a=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,i=r.$,n=(e,t)=>s=>{var r;if((null==t?void 0:t.variants)==null)return i(e,null==s?void 0:s.class,null==s?void 0:s.className);let{variants:n,defaultVariants:l}=t,o=Object.keys(n).map(e=>{let t=null==s?void 0:s[e],r=null==l?void 0:l[e];if(null===t)return null;let i=a(t)||a(r);return n[e][i]}),d=s&&Object.entries(s).reduce((e,t)=>{let[s,r]=t;return void 0===r||(e[s]=r),e},{});return i(e,o,null==t||null==(r=t.compoundVariants)?void 0:r.reduce((e,t)=>{let{class:s,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,s]=e;return Array.isArray(s)?s.includes({...l,...d}[t]):({...l,...d})[t]===s})?[...e,s,r]:e},[]),null==s?void 0:s.class,null==s?void 0:s.className)}},65714:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]])},67805:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},69285:(e,t,s)=>{"use strict";var r=s(48849);s.o(r,"usePathname")&&s.d(t,{usePathname:function(){return r.usePathname}}),s.o(r,"useRouter")&&s.d(t,{useRouter:function(){return r.useRouter}})},69709:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},71651:(e,t,s)=>{"use strict";s.d(t,{T:()=>i});var r=s(4624);s(99356);var a=s(13506);function i(e){let{className:t,...s}=e;return(0,r.jsx)("textarea",{"data-slot":"textarea",className:(0,a.cn)("flex field-sizing-content min-h-16 w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:ring-destructive/40",t),...s})}},76974:(e,t,s)=>{"use strict";s.d(t,{A:()=>r});let r=(0,s(45804).A)("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},83593:(e,t,s)=>{"use strict";s.d(t,{WorkflowEditor:()=>C});var r=s(4624),a=s(99356),i=s(69285),n=s(49411),l=s(3239),o=s(46972),d=s(67805),c=s(41379),u=s(59728),p=s(69709),m=s(76974),h=s(65714),x=s(54400),v=s.n(x),f=s(56221),b=s(28310),g=s(85253),y=s(15523),w=s(71651),k=s(22841),j=s(7911);let N=(0,j.createServerReference)("60413cfb5e7a919a5ff6852f11d9fcd610c24ac507",j.callServer,void 0,j.findSourceMapURL,"saveWorkflowAction"),P=(0,j.createServerReference)("60534beb451ff73726ae8dcd6ec6cfbcdc3f341c2c",j.callServer,void 0,j.findSourceMapURL,"listRunsAction"),z=(0,j.createServerReference)("70d19d8a06ae1ffb0d66d220c29b0d6c3fecea7f75",j.callServer,void 0,j.findSourceMapURL,"runWorkflowAction"),A=(0,j.createServerReference)("6064649c92872be6e0443d91f2e03ba07cb88e91d6",j.callServer,void 0,j.findSourceMapURL,"deleteWorkflowAction"),S=[{kind:"text-template",label:"Text template",description:"Assembles text from a template with substitutions from previous steps. Use as glue between steps before the next one.",defaultParams:{template:"Hello {{prev}}"},fields:[{key:"template",label:"Template",type:"text",hint:"Substitutions: {{prev}}, {{steps.<id>.output}}, {{input.<field>}}",placeholder:"Summary: {{prev}}"}]},{kind:"http-request",label:"HTTP request",description:"Makes an HTTP request (GET by default). Puts the response body into output as a string or JSON if application/json.",defaultParams:{url:"https://api.example.com/",method:"GET"},fields:[{key:"url",label:"URL",type:"url",placeholder:"https://…"},{key:"method",label:"Method",type:"select",options:["GET","POST","PUT","PATCH","DELETE"]},{key:"headers",label:"Headers (JSON)",type:"json",hint:'Example: {"Authorization":"Bearer …"}'},{key:"body",label:"Body",type:"text",hint:"Leave empty for GET"}]},{kind:"web-fetch",label:"Fetch page",description:"Requests a URL and returns the textual content. Convenient for parsing pages without HTTP-config pain.",defaultParams:{url:"https://example.com"},fields:[{key:"url",label:"URL",type:"url",placeholder:"https://…"}]},{kind:"ask-agent",label:"Ask the agent",description:"Runs a headless orchestrator agent with the given question. Output is the agent's reply (the full assistant text).",defaultParams:{prompt:"Briefly summarize: {{prev}}"},fields:[{key:"prompt",label:"Question for the agent",type:"text",placeholder:"Use {{prev}} to pass the input"}]},{kind:"kb-write",label:"Write to KB",description:"Saves to the knowledge base as a Markdown file with frontmatter (kind, title, body). Use the previous step's output as `body`.",defaultParams:{kind:"note",title:"From workflow {{workflow.label}}",body:"{{prev}}"},fields:[{key:"kind",label:"Kind",type:"string",placeholder:"note"},{key:"title",label:"Title",type:"string",placeholder:"{{workflow.label}}"},{key:"body",label:"Body (Markdown)",type:"text",placeholder:"{{prev}}"}]},{kind:"utility-call",label:"Call a mini-app",description:"Runs a named server action of an installed utility with the given args. Output = the action's result. utility-call lets the workflow use mini-app functions as a library.",defaultParams:{utilityId:"",utilityScope:"global",actionName:"",args:"{}"},fields:[{key:"utilityId",label:"Utility (id)",type:"string",placeholder:"my-utility"},{key:"utilityScope",label:"Scope",type:"select",options:["global","project"]},{key:"actionName",label:"Action",type:"string",placeholder:"name from manifest.serverActions"},{key:"args",label:"Arguments (JSON)",type:"json",hint:"Passed as the first argument to the action. {{prev}} substitutions work inside JSON strings."}]},{kind:"image-generate",label:"Generate an image",description:"Generates an image via Gemini Nano Banana or Codex `$imagegen`. Output: {url, sha, mime, provider} — `url` can be inserted into a kb-write body as `![]({{steps.<id>.output.url}})`.",defaultParams:{prompt:"cute raccoon in a spacesuit, watercolor",provider:"gemini",aspectRatio:"1:1"},fields:[{key:"prompt",label:"Prompt",type:"text",placeholder:"Image description"},{key:"provider",label:"Provider",type:"select",options:["gemini","codex"]},{key:"aspectRatio",label:"Aspect ratio",type:"select",options:["1:1","16:9","9:16","4:3","3:4","21:9"]},{key:"size",label:"Size (opt.)",type:"string",placeholder:"1024x1024"}]},{kind:"image-search",label:"Search images on the web",description:"Searches for ready-made images by query (Unsplash by default, Pexels as fallback). Output: {results: [{url, thumb, attribution}…]}.",defaultParams:{query:"mountains sunrise",provider:"unsplash",count:6},fields:[{key:"query",label:"Query",type:"string",placeholder:"mountains sunrise"},{key:"provider",label:"Provider",type:"select",options:["unsplash","pexels","brave"]},{key:"count",label:"Result count",type:"string",placeholder:"6"}]},{kind:"notify",label:"Notify me",description:"Delivers a message to your configured channels (Telegram). Body defaults to the previous step's output — chain it after a summary to get a daily ping.",defaultParams:{title:"",body:"{{prev}}"},fields:[{key:"title",label:"Title (optional)",type:"string",placeholder:"Morning digest"},{key:"body",label:"Body",type:"text",placeholder:"{{prev}}"},{key:"link",label:"Link (optional)",type:"string",placeholder:"https://…"}]}];function E(e){var t;return null!=(t=S.find(t=>t.kind===e))?t:null}function C(e){var t;let{rootId:s,initial:u,initialRuns:p,readOnly:m,sourceUtilityId:h}=e,x=(0,n.c)("roots"),b=(0,i.useRouter)(),[w,j]=(0,a.useState)(u),[C,M]=(0,a.useState)(p),[O,_]=(0,a.useState)(null),[L,I]=(0,a.useState)("closed"),[U,$]=(0,a.useTransition)(),[H,V]=(0,a.useTransition)(),q=e=>{m||(j(e),V(async()=>{var t;let r=await N(s,e);r.ok||f.oR.error(null!=(t=r.error)?t:x("workflowEditor.saveFailed"))}))},D=async()=>{let e=await P(s,w.id);e.ok&&M(e.runs)},B=(e,t)=>{let s=e+t;if(s<0||s>=w.steps.length)return;let r=[...w.steps],a=r[e],i=r[s];r[e]=i,r[s]=a,q({...w,steps:r,updatedAt:new Date().toISOString()})};return(0,r.jsxs)("div",{className:"space-y-6",children:[m&&(0,r.jsxs)("div",{className:"rounded-md border border-violet-200 bg-violet-50 dark:bg-violet-950/20 px-4 py-2.5 text-xs text-violet-900 dark:text-violet-200",children:["Provided by the"," ",(0,r.jsx)("span",{className:"font-mono",children:null!=h?h:"utility"})," ","mini-app — managed by its manifest, so it's read-only here. You can still run it manually and review the history below."]}),(0,r.jsxs)("div",{className:"rounded-md border bg-card p-4 space-y-3",children:[(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:x("workflowEditor.nameLabel")}),(0,r.jsx)(y.p,{value:w.label,onChange:e=>q({...w,label:e.target.value}),className:"text-sm",disabled:m})]}),(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:x("workflowEditor.descriptionLabel")}),(0,r.jsx)(y.p,{value:null!=(t=w.description)?t:"",onChange:e=>q({...w,description:e.target.value}),className:"text-sm",placeholder:x("workflowEditor.descriptionPlaceholder"),disabled:m})]}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:x("workflowEditor.triggerLabel")}),(0,r.jsxs)(k.l6,{value:w.trigger,onValueChange:e=>q({...w,trigger:e}),disabled:m,children:[(0,r.jsx)(k.bq,{className:"h-8 w-32",children:(0,r.jsx)(k.yv,{})}),(0,r.jsxs)(k.gC,{children:[(0,r.jsx)(k.eb,{value:"manual",children:x("workflowEditor.triggerManual")}),(0,r.jsx)(k.eb,{value:"hourly",children:x("workflowEditor.triggerHourly")}),(0,r.jsx)(k.eb,{value:"daily",children:x("workflowEditor.triggerDaily")}),(0,r.jsx)(k.eb,{value:"weekly",children:x("workflowEditor.triggerWeekly")})]})]})]}),w.sourceTopicId&&(0,r.jsx)(v(),{href:"/roots/".concat(s,"/chat/").concat(w.sourceTopicId),className:"text-xs text-muted-foreground hover:underline self-end pb-2",children:x("workflowEditor.editViaTopic")}),(0,r.jsxs)("div",{className:"ml-auto flex items-center gap-2 self-end pb-1",children:[H&&(0,r.jsxs)("span",{className:"text-[11px] text-muted-foreground",children:[(0,r.jsx)(l.A,{className:"h-3 w-3 animate-spin inline mr-1"}),x("workflowEditor.saving")]}),!m&&(0,r.jsxs)(g.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>{confirm(x("workflowEditor.deleteConfirm",{label:w.label}))&&V(async()=>{let e=await A(s,w.id);if(!e.ok)return void f.oR.error(e.error);b.push("/roots/".concat(s,"/workflows"))})},disabled:H,className:"text-muted-foreground hover:text-destructive",children:[(0,r.jsx)(o.A,{className:"h-3.5 w-3.5 mr-1"}),x("workflowEditor.delete")]}),(0,r.jsxs)(g.$,{type:"button",size:"sm",onClick:()=>{$(async()=>{let e=await z(s,w.id);if(!e.ok)return void f.oR.error(e.error);"completed"===e.run.status?f.oR.success(x("workflowEditor.completed")):"failed"===e.run.status&&f.oR.error(x("workflowEditor.failedRun")),D()})},disabled:U||0===w.steps.length,className:"gap-1",children:[U?(0,r.jsx)(l.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,r.jsx)(d.A,{className:"h-3.5 w-3.5"}),x("workflowEditor.run")]})]})]})]}),(0,r.jsxs)("section",{className:"space-y-2",children:[(0,r.jsx)("h2",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:x("workflowEditor.stepsHeading",{count:w.steps.length})}),w.steps.map((e,t)=>(0,r.jsx)(R,{step:e,idx:t,total:w.steps.length,readOnly:m,editing:O===e.id,onToggleEdit:()=>_(O===e.id?null:e.id),onMoveUp:()=>B(t,-1),onMoveDown:()=>B(t,1),onRemove:()=>(e=>{let t=w.steps.filter((t,s)=>s!==e);q({...w,steps:t,updatedAt:new Date().toISOString()})})(t),onChange:e=>((e,t)=>{let s=w.steps.map((s,r)=>r===e?{...s,...t}:s);q({...w,steps:s,updatedAt:new Date().toISOString()})})(t,e)},e.id)),"open"===L?(0,r.jsxs)("div",{className:"rounded-md border bg-card p-3 space-y-2",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h3",{className:"text-xs font-medium",children:x("workflowEditor.pickStepKind")}),(0,r.jsx)(g.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>I("closed"),className:"h-6 text-xs",children:x("workflowEditor.cancel")})]}),(0,r.jsx)("div",{className:"grid gap-1.5",children:S.map(e=>(0,r.jsxs)("button",{type:"button",onClick:()=>(e=>{let t=E(e);if(!t)return;let s=function(e,t){let s=t.replace(/[^a-z0-9]/gi,"-"),r=1;for(;e.some(e=>e.id==="".concat(s,"-").concat(r));)r+=1;return"".concat(s,"-").concat(r)}(w.steps,e);q({...w,steps:[...w.steps,{id:s,kind:e,label:t.label,params:{...t.defaultParams}}],updatedAt:new Date().toISOString()}),I("closed"),_(s)})(e.kind),className:"text-left rounded-md border px-3 py-2 hover:bg-accent/60 transition",children:[(0,r.jsx)("div",{className:"text-sm font-medium",children:e.label}),(0,r.jsx)("p",{className:"text-[11px] text-muted-foreground mt-0.5",children:e.description})]},e.kind))})]}):m?null:(0,r.jsxs)(g.$,{type:"button",variant:"outline",size:"sm",onClick:()=>I("open"),className:"w-full gap-1 border-dashed",children:[(0,r.jsx)(c.A,{className:"h-3.5 w-3.5"}),x("workflowEditor.addStep")]})]}),(0,r.jsx)(T,{runs:C,onRefresh:D})]})}function R(e){let{step:t,idx:s,total:a,readOnly:i,editing:l,onToggleEdit:d,onMoveUp:c,onMoveDown:x,onRemove:v,onChange:f}=e,j=(0,n.c)("roots"),N=E(t.kind);return(0,r.jsxs)("div",{className:"rounded-md border bg-card overflow-hidden",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 group",children:[(0,r.jsx)("span",{className:"text-[10px] font-mono text-muted-foreground w-6 text-center shrink-0",children:s+1}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,r.jsx)("span",{className:"text-sm font-medium truncate",children:t.label}),(0,r.jsx)(b.E,{variant:"outline",className:"text-[10px] font-mono",children:t.kind})]}),N&&(0,r.jsx)("p",{className:"text-[11px] text-muted-foreground line-clamp-1 mt-0.5",children:N.description})]}),(0,r.jsxs)("div",{className:"flex items-center gap-0.5 shrink-0",children:[!i&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(g.$,{type:"button",size:"icon",variant:"ghost",onClick:c,disabled:0===s,className:"h-7 w-7",children:(0,r.jsx)(u.A,{className:"h-3.5 w-3.5"})}),(0,r.jsx)(g.$,{type:"button",size:"icon",variant:"ghost",onClick:x,disabled:s===a-1,className:"h-7 w-7",children:(0,r.jsx)(p.A,{className:"h-3.5 w-3.5"})})]}),(0,r.jsx)(g.$,{type:"button",size:"icon",variant:"ghost",onClick:d,className:"h-7 w-7",title:i?"View step config":void 0,children:(0,r.jsx)(m.A,{className:"h-3.5 w-3.5"})}),!i&&(0,r.jsx)(g.$,{type:"button",size:"icon",variant:"ghost",onClick:v,className:"h-7 w-7 text-muted-foreground hover:text-destructive",children:(0,r.jsx)(o.A,{className:"h-3.5 w-3.5"})})]})]}),l&&(0,r.jsxs)("div",{className:"border-t bg-muted/30 px-3 py-3 space-y-2.5",children:[(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsx)("label",{className:"text-[11px] font-medium text-muted-foreground",children:j("workflowEditor.labelField")}),(0,r.jsx)(y.p,{value:t.label,onChange:e=>f({label:e.target.value}),className:"h-8 text-sm"})]}),null==N?void 0:N.fields.map(e=>{var s;let a=null!=(s=t.params[e.key])?s:"";return(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsx)("label",{className:"text-[11px] font-medium text-muted-foreground",children:e.label}),"select"===e.type&&e.options?(0,r.jsxs)(k.l6,{value:String(a||e.options[0]),onValueChange:s=>f({params:{...t.params,[e.key]:s}}),children:[(0,r.jsx)(k.bq,{className:"h-8 text-sm",children:(0,r.jsx)(k.yv,{})}),(0,r.jsx)(k.gC,{children:e.options.map(e=>(0,r.jsx)(k.eb,{value:e,children:e},e))})]}):"text"===e.type||"json"===e.type?(0,r.jsx)(w.T,{value:String(a),onChange:s=>f({params:{...t.params,[e.key]:s.target.value}}),placeholder:e.placeholder,rows:3,className:"text-sm font-mono"}):(0,r.jsx)(y.p,{value:String(a),onChange:s=>f({params:{...t.params,[e.key]:s.target.value}}),placeholder:e.placeholder,className:"h-8 text-sm font-mono"}),e.hint&&(0,r.jsx)("p",{className:"text-[10px] text-muted-foreground",children:e.hint})]},e.key)}),(0,r.jsx)("div",{className:"flex justify-end",children:(0,r.jsxs)(g.$,{type:"button",size:"sm",variant:"ghost",onClick:d,className:"h-7 text-xs gap-1",children:[(0,r.jsx)(h.A,{className:"h-3 w-3"}),j("workflowEditor.done")]})})]})]})}function T(e){let{runs:t,onRefresh:s}=e,i=(0,n.c)("roots"),[o,d]=(0,a.useTransition)();return 0===t.length?(0,r.jsxs)("section",{className:"space-y-2",children:[(0,r.jsx)("h2",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:i("workflowEditor.runHistory")}),(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:i("workflowEditor.noRuns")})]}):(0,r.jsxs)("section",{className:"space-y-2",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h2",{className:"text-sm font-medium text-muted-foreground uppercase tracking-wider",children:i("workflowEditor.runHistory")}),(0,r.jsx)(g.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>d(async()=>s()),disabled:o,className:"h-7 text-xs",children:o?(0,r.jsx)(l.A,{className:"h-3 w-3 animate-spin"}):i("workflowEditor.refresh")})]}),(0,r.jsx)("ul",{className:"space-y-1.5",children:t.map(e=>(0,r.jsx)("li",{children:(0,r.jsxs)("details",{className:"rounded-md border bg-card",children:[(0,r.jsxs)("summary",{className:"cursor-pointer list-none flex items-center gap-2 px-3 py-2",children:[(0,r.jsx)(b.E,{variant:"completed"===e.status?"secondary":"failed"===e.status?"destructive":"outline",className:"text-[10px]",children:e.status}),(0,r.jsx)("span",{className:"text-xs font-mono truncate",children:e.id}),(0,r.jsx)("span",{className:"text-[10px] text-muted-foreground ml-auto",children:new Date(e.startedAt).toLocaleString()})]}),(0,r.jsx)("div",{className:"px-3 pb-3 space-y-1.5",children:e.steps.map(e=>(0,r.jsxs)("div",{className:"text-xs rounded border bg-muted/30 px-2 py-1.5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(b.E,{variant:"completed"===e.status?"secondary":"failed"===e.status?"destructive":"outline",className:"text-[10px]",children:e.status}),(0,r.jsx)("span",{className:"font-mono",children:e.stepId})]}),e.error&&(0,r.jsx)("pre",{className:"mt-1 text-[10px] text-destructive whitespace-pre-wrap",children:e.error}),void 0!==e.output&&(0,r.jsx)("pre",{className:"mt-1 text-[10px] text-muted-foreground whitespace-pre-wrap max-h-32 overflow-y-auto font-mono",children:function(e){try{if("string"==typeof e)return e.length>800?e.slice(0,800)+"…":e;let t=JSON.stringify(e,null,2);return t.length>800?t.slice(0,800)+"…":t}catch(t){return String(e)}}(e.output)})]},e.stepId))})]})},e.id))})]})}},85253:(e,t,s)=>{"use strict";s.d(t,{$:()=>o});var r=s(4624);s(99356);var a=s(60621),i=s(50362),n=s(13506);let l=(0,a.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:t,variant:s="default",size:a="default",asChild:o=!1,...d}=e,c=o?i.bL:"button";return(0,r.jsx)(c,{"data-slot":"button","data-variant":s,"data-size":a,className:(0,n.cn)(l({variant:s,size:a,className:t})),...d})}},91074:(e,t,s)=>{"use strict";s.d(t,{Separator:()=>n});var r=s(4624);s(99356);var a=s(44188),i=s(13506);function n(e){let{className:t,orientation:s="horizontal",decorative:n=!0,...l}=e;return(0,r.jsx)(a.b,{"data-slot":"separator",decorative:n,orientation:s,className:(0,i.cn)("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...l})}}},e=>{e.O(0,[4400,4678,9776,6785,3335,9411,4933,146,7358],()=>e(e.s=52515)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2699],{13506:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var n=r(47989),s=r(55701);function a(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,n.$)(t))}},17414:(e,t,r)=>{Promise.resolve().then(r.bind(r,47155)),Promise.resolve().then(r.bind(r,91074)),Promise.resolve().then(r.bind(r,96253)),Promise.resolve().then(r.bind(r,28050)),Promise.resolve().then(r.bind(r,94904)),Promise.resolve().then(r.bind(r,13270)),Promise.resolve().then(r.bind(r,99730)),Promise.resolve().then(r.bind(r,89146)),Promise.resolve().then(r.bind(r,19078)),Promise.resolve().then(r.bind(r,67854)),Promise.resolve().then(r.bind(r,69050)),Promise.resolve().then(r.bind(r,63739)),Promise.resolve().then(r.bind(r,33976)),Promise.resolve().then(r.bind(r,12537)),Promise.resolve().then(r.bind(r,97485)),Promise.resolve().then(r.bind(r,41923)),Promise.resolve().then(r.bind(r,73868)),Promise.resolve().then(r.bind(r,53511)),Promise.resolve().then(r.bind(r,2018)),Promise.resolve().then(r.bind(r,18487)),Promise.resolve().then(r.bind(r,98346)),Promise.resolve().then(r.bind(r,14884)),Promise.resolve().then(r.bind(r,85314)),Promise.resolve().then(r.bind(r,17280)),Promise.resolve().then(r.bind(r,8855)),Promise.resolve().then(r.bind(r,86631)),Promise.resolve().then(r.bind(r,2604)),Promise.resolve().then(r.bind(r,27237)),Promise.resolve().then(r.bind(r,49455)),Promise.resolve().then(r.bind(r,39211)),Promise.resolve().then(r.bind(r,56360)),Promise.resolve().then(r.t.bind(r,54400,23))},27474:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(45804).A)("Workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]])},28310:(e,t,r)=>{"use strict";r.d(t,{E:()=>l});var n=r(4624);r(99356);var s=r(60621),a=r(50362),i=r(13506);let o=(0,s.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:r="default",asChild:s=!1,...l}=e,d=s?a.bL:"span";return(0,n.jsx)(d,{"data-slot":"badge","data-variant":r,className:(0,i.cn)(o({variant:r}),t),...l})}},32165:(e,t,r)=>{"use strict";r.d(t,{d:()=>i});var n=r(4624);r(99356);var s=r(8855),a=r(13506);function i(e){let{className:t,size:r="default",...i}=e;return(0,n.jsx)(s.Root,{"data-slot":"switch","data-size":r,className:(0,a.cn)("peer group/switch inline-flex shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80",t),...i,children:(0,n.jsx)(s.Thumb,{"data-slot":"switch-thumb",className:(0,a.cn)("pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground")})})}},47155:(e,t,r)=>{"use strict";r.d(t,{WorkflowRow:()=>u});var n=r(4624),s=r(99356),a=r(56221),i=r(27474),o=r(28310),l=r(32165),d=r(7911);let c=(0,d.createServerReference)("7045a735359aeab2ea15cc6a600142c1e43b0c7c44",d.callServer,void 0,d.findSourceMapURL,"setWorkflowEnabledAction");function u(e){var t;let{rootId:r,wf:d,href:u}=e,[h,v]=(0,s.useState)(d.enabled),[m,b]=(0,s.useTransition)(),f="project"===d.source&&"manual"!==d.trigger;return(0,n.jsx)("div",{className:"rounded-md border bg-card hover:bg-accent/30 transition px-4 py-3",children:(0,n.jsxs)("div",{className:"flex items-start gap-3",children:[(0,n.jsx)(i.A,{className:"h-4 w-4 mt-0.5 shrink-0 text-violet-600"}),(0,n.jsxs)("a",{href:u,className:"min-w-0 flex-1",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,n.jsx)("span",{className:"text-sm font-medium truncate",children:d.label}),(0,n.jsx)(o.E,{variant:"outline",className:"text-[10px]",children:d.trigger}),(0,n.jsxs)(o.E,{variant:"secondary",className:"text-[10px]",children:[d.stepCount," ",1===d.stepCount?"step":"steps"]}),"utility"===d.source&&(0,n.jsxs)(o.E,{variant:"outline",className:"text-[10px] border-violet-300 text-violet-700",children:["from ",null!=(t=d.utilityId)?t:"utility"]}),"manual"!==d.trigger&&!h&&(0,n.jsx)(o.E,{variant:"outline",className:"text-[10px] border-amber-300 text-amber-700",children:"paused"})]}),d.description&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:d.description}),(0,n.jsxs)("div",{className:"flex items-center gap-3 text-[10px] text-muted-foreground mt-1 font-mono",children:[(0,n.jsx)("span",{children:d.id}),d.lastRun&&(0,n.jsxs)("span",{children:["last: ",function(e){let t=Date.now()-Date.parse(e);if(!Number.isFinite(t)||t<0)return"—";let r=Math.floor(t/1e3);if(r<60)return"".concat(r,"s ago");let n=Math.floor(r/60);if(n<60)return"".concat(n,"m ago");let s=Math.floor(n/60);return s<24?"".concat(s,"h ago"):"".concat(Math.floor(s/24),"d ago")}(d.lastRun.startedAt)," \xb7"," ",(0,n.jsx)("span",{className:"failed"===d.lastRun.status?"text-destructive":"running"===d.lastRun.status?"text-amber-700":"",children:d.lastRun.status})]}),d.nextRunAt&&h&&(0,n.jsxs)("span",{children:["next: ",function(e){let t=Date.parse(e)-Date.now();if(!Number.isFinite(t))return"—";if(t<=0)return"due";let r=Math.floor(t/1e3);if(r<60)return"in ".concat(r,"s");let n=Math.floor(r/60);if(n<60)return"in ".concat(n,"m");let s=Math.floor(n/60);return s<24?"in ".concat(s,"h"):"in ".concat(Math.floor(s/24),"d")}(d.nextRunAt)]})]})]}),"manual"!==d.trigger&&(0,n.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground",children:h?"on":"off"}),(0,n.jsx)(l.d,{checked:h,onCheckedChange:e=>{v(e),b(async()=>{let t=await c(r,d.id,e);if(t.ok)a.oR.success(e?"Scheduler resumed":"Scheduler paused");else{var n;v(!e),a.oR.error(null!=(n=t.error)?n:"Couldn't change enabled state")}})},disabled:!f||m,"aria-label":"Toggle scheduler"})]})]})})}},60621:(e,t,r)=>{"use strict";r.d(t,{F:()=>i});var n=r(47989);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=n.$,i=(e,t)=>r=>{var n;if((null==t?void 0:t.variants)==null)return a(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:i,defaultVariants:o}=t,l=Object.keys(i).map(e=>{let t=null==r?void 0:r[e],n=null==o?void 0:o[e];if(null===t)return null;let a=s(t)||s(n);return i[e][a]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,n]=t;return void 0===n||(e[r]=n),e},{});return a(e,l,null==t||null==(n=t.compoundVariants)?void 0:n.reduce((e,t)=>{let{class:r,className:n,...s}=t;return Object.entries(s).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...o,...d}[t]):({...o,...d})[t]===r})?[...e,r,n]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},91074:(e,t,r)=>{"use strict";r.d(t,{Separator:()=>i});var n=r(4624);r(99356);var s=r(44188),a=r(13506);function i(e){let{className:t,orientation:r="horizontal",decorative:i=!0,...o}=e;return(0,n.jsx)(s.b,{"data-slot":"separator",decorative:i,orientation:r,className:(0,a.cn)("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...o})}}},e=>{e.O(0,[4400,4678,9776,6785,3335,4933,146,7358],()=>e(e.s=17414)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9429],{3239:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},3747:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},4959:(e,t,r)=>{"use strict";r.d(t,{BT:()=>l,Wu:()=>d,ZB:()=>o,Zp:()=>n,aR:()=>i,wL:()=>c});var a=r(4624);r(99356);var s=r(13506);function n(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,s.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...r})}function i(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...r})}function l(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,s.cn)("text-sm text-muted-foreground",t),...r})}function d(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...r})}function c(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-footer",className:(0,s.cn)("flex items-center px-6 [.border-t]:pt-6",t),...r})}},9923:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("Folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},13506:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var a=r(47989),s=r(55701);function n(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,a.$)(t))}},13561:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},15523:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var a=r(4624);r(99356);var s=r(13506);function n(e){let{className:t,type:r,...n}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,s.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...n})}},32564:(e,t,r)=>{"use strict";r.d(t,{DirectoryPicker:()=>C});var a=r(4624),s=r(99356),n=r(69285),i=r(49411);let o=(0,r(45804).A)("House",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]]);var l=r(3747),d=r(59728),c=r(42146),u=r(72754),h=r(3239),m=r(13561),p=r(69709),x=r(69205),v=r(9923),f=r(56221),b=r(85253),g=r(4959),j=r(15523),y=r(80192),k=r(91074),w=r(7911);let N=(0,w.createServerReference)("4061e79674a610b7ce47b530baab5566de69d40307",w.callServer,void 0,w.findSourceMapURL,"addRootAction");var P=r(63514);let A=(0,w.createServerReference)("40f52f361e4e50eda834d1d413d0ac79b99155291f",w.callServer,void 0,w.findSourceMapURL,"browseAction"),S=(0,w.createServerReference)("60c563940ceca5dc95db0927863affe3d37d4ff002",w.callServer,void 0,w.findSourceMapURL,"createDirectoryAction");function C(e){let{initialPath:t}=e,r=(0,i.c)("roots"),[p,x]=(0,s.useState)(t),[v,w]=(0,s.useState)(t),[C,R]=(0,s.useState)(null),[D,$]=(0,s.useState)([]),[_,E]=(0,s.useState)(t),[H,T]=(0,s.useState)(!1),[Z,B]=(0,s.useTransition)(),[O,V]=(0,s.useTransition)(),[U,q]=(0,s.useState)(!1),[I,W]=(0,s.useState)(""),[K,Q]=(0,s.useTransition)(),X=(0,n.useRouter)();(0,s.useEffect)(()=>{G(t)},[]);let G=e=>{B(async()=>{let t=await A(e);if(!t.ok){var r;f.oR.error(null!=(r=t.error)?r:"Failed to browse");return}x(t.path),w(t.path),R(t.parent),E(t.path),$(t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden)))})},J=async e=>{let t=function e(t,r){for(let a of t){if(a.absPath===r)return a;if(a.expanded){let t=e(a.children,r);if(t)return t}}return null}(D,e);if(!t)return;if(t.expanded)return void $(t=>L(t,e,e=>({...e,expanded:!1})));if(t.loaded)return void $(t=>L(t,e,e=>({...e,expanded:!0})));$(t=>L(t,e,e=>({...e,loading:!0})));let r=await A(e);if(!r.ok){var a;f.oR.error(null!=(a=r.error)?a:"Failed to browse"),$(t=>L(t,e,e=>({...e,loading:!1})));return}let s=r.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden));$(t=>L(t,e,e=>({...e,loading:!1,loaded:!0,expanded:!0,children:s})))},Y=async e=>{if(e===p){let t=await A(e);t.ok&&$(t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden)));return}let t=await A(e);if(!t.ok)return;let r=t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden));$(t=>L(t,e,e=>({...e,children:r,loaded:!0,expanded:!0})))};return(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{children:[(0,a.jsxs)(g.ZB,{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("span",{children:"Browse"}),(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",onClick:()=>G(t),disabled:Z,children:[(0,a.jsx)(o,{className:"mr-1 h-4 w-4"})," Home"]})]}),(0,a.jsxs)("form",{className:"flex gap-2 mt-2",onSubmit:e=>{e.preventDefault(),G(v)},children:[(0,a.jsx)(j.p,{value:v,onChange:e=>w(e.target.value),placeholder:"/absolute/path",className:"font-mono text-xs"}),(0,a.jsx)(b.$,{type:"submit",variant:"secondary",disabled:Z,children:(0,a.jsx)(l.A,{className:"h-4 w-4 ".concat(Z?"animate-spin":"")})})]})]}),(0,a.jsx)(k.Separator,{}),(0,a.jsx)(g.Wu,{className:"px-2 py-2",children:(0,a.jsxs)(y.F,{className:"h-[460px]",children:[(0,a.jsxs)("div",{className:"px-2 py-1 flex items-center gap-2",children:[(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",disabled:!C||Z,onClick:()=>C&&G(C),className:"h-8",children:[(0,a.jsx)(d.A,{className:"mr-1 h-4 w-4"})," Up"]}),(0,a.jsxs)("button",{type:"button",onClick:()=>E(p),className:"flex-1 flex items-center gap-2 px-2 py-1 text-sm rounded-md hover:bg-accent ".concat(_===p?"bg-accent":""),title:p,children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,a.jsx)("span",{className:"truncate font-mono text-xs",children:"."}),(0,a.jsxs)("span",{className:"text-muted-foreground text-[11px] truncate",children:["(",M(p),")"]})]}),(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",disabled:Z||K,onClick:()=>{q(e=>!e),W("")},className:"h-8",title:r("picker.createFolderTitle",{parent:M(_)}),children:[(0,a.jsx)(u.A,{className:"mr-1 h-4 w-4"})," ",r("picker.createButton")]}),(0,a.jsxs)("label",{className:"flex items-center gap-1 text-xs text-muted-foreground select-none",children:[(0,a.jsx)("input",{type:"checkbox",checked:H,onChange:e=>T(e.target.checked)}),"hidden"]})]}),U&&(0,a.jsxs)("form",{className:"px-2 pb-2 flex items-center gap-2",onSubmit:e=>{e.preventDefault();let t=I.trim();t&&Q(async()=>{let e=await S(_,t);if(!e.ok){var a;f.oR.error(null!=(a=e.error)?a:r("picker.createFolderFailed"));return}f.oR.success(r("picker.folderCreated")),q(!1),W(""),await Y(_),E(e.path)})},children:[(0,a.jsxs)("span",{className:"text-[11px] text-muted-foreground font-mono truncate max-w-[40%]",children:[_,"/"]}),(0,a.jsx)(j.p,{autoFocus:!0,value:I,onChange:e=>W(e.target.value),placeholder:r("picker.newFolderPlaceholder"),className:"h-8 text-sm flex-1",disabled:K,onKeyDown:e=>{"Escape"===e.key&&(e.preventDefault(),q(!1),W(""))}}),(0,a.jsxs)(b.$,{type:"submit",size:"sm",disabled:K||!I.trim(),className:"h-8",children:[K?(0,a.jsx)(h.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(u.A,{className:"mr-1 h-3.5 w-3.5"}),r("picker.createButton")]}),(0,a.jsx)(b.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>{q(!1),W("")},className:"h-8",children:(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"})})]}),(0,a.jsx)(k.Separator,{className:"my-1"}),Z?(0,a.jsxs)("div",{className:"flex items-center justify-center py-10 text-sm text-muted-foreground",children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4 animate-spin"})," Loading…"]}):0===D.length?(0,a.jsx)("div",{className:"px-4 py-10 text-center text-sm text-muted-foreground",children:"No subdirectories."}):(0,a.jsx)(z,{nodes:D,selected:_,onSelect:E,onToggle:J,showHidden:H,depth:0})]})}),(0,a.jsx)(k.Separator,{}),(0,a.jsxs)(g.wL,{className:"flex items-center justify-between gap-4",children:[(0,a.jsxs)("div",{className:"text-xs text-muted-foreground font-mono truncate",children:["Selected: ",_]}),(0,a.jsx)(b.$,{onClick:()=>{V(async()=>{let e=await N(_);if(!e.ok){var t;f.oR.error(null!=(t=e.error)?t:"Failed to add");return}f.oR.success("Directory added"),(0,P.$d)(P.Zi.rootsChanged),e.onboardingTopicId?X.push("/roots/".concat(e.id,"/chat/").concat(e.onboardingTopicId)):X.push("/roots/".concat(e.id))})},disabled:O||Z,children:O?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4 animate-spin"})," Adding…"]}):"Add this directory"})]})]})}function z(e){let{nodes:t,selected:r,onSelect:s,onToggle:n,showHidden:i,depth:o}=e;return(0,a.jsx)("ul",{children:t.filter(e=>i||!e.hidden).map(e=>(0,a.jsxs)("li",{children:[(0,a.jsx)(R,{node:e,depth:o,selected:r,onSelect:s,onToggle:n}),e.expanded&&e.children.length>0&&(0,a.jsx)(z,{nodes:e.children,selected:r,onSelect:s,onToggle:n,showHidden:i,depth:o+1}),e.expanded&&e.loaded&&0===e.children.length&&(0,a.jsx)("div",{className:"text-xs text-muted-foreground italic px-2 py-1",style:{paddingLeft:16*o+44},children:"(empty)"})]},e.absPath))})}function R(e){let{node:t,depth:r,selected:s,onSelect:n,onToggle:i}=e,o=s===t.absPath;return(0,a.jsxs)("div",{className:"group flex items-center gap-1 pr-2 py-1 rounded-md hover:bg-accent/60 ".concat(o?"bg-accent":""),style:{paddingLeft:16*r+4},children:[(0,a.jsx)("button",{type:"button",onClick:()=>i(t.absPath),className:"h-6 w-6 flex items-center justify-center text-muted-foreground hover:text-foreground shrink-0","aria-label":t.expanded?"Collapse":"Expand",children:t.loading?(0,a.jsx)(h.A,{className:"h-3.5 w-3.5 animate-spin"}):t.expanded?(0,a.jsx)(p.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"})}),(0,a.jsxs)("button",{type:"button",onClick:()=>n(t.absPath),onDoubleClick:()=>i(t.absPath),className:"flex-1 min-w-0 flex items-center gap-2 text-left text-sm",children:[t.expanded?(0,a.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}):(0,a.jsx)(v.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,a.jsx)("span",{className:"truncate ".concat(t.hidden?"opacity-60":""),children:t.name})]})]})}function F(e,t,r){return{name:e,absPath:t,hidden:r,loaded:!1,loading:!1,expanded:!1,children:[]}}function L(e,t,r){return e.map(e=>e.absPath===t?r(e):e.children.length>0?{...e,children:L(e.children,t,r)}:e)}function M(e){var t;let r=e.split("/").filter(Boolean);return null!=(t=r[r.length-1])?t:e}},32740:(e,t,r)=>{Promise.resolve().then(r.bind(r,32564)),Promise.resolve().then(r.bind(r,96253)),Promise.resolve().then(r.bind(r,28050)),Promise.resolve().then(r.bind(r,94904)),Promise.resolve().then(r.bind(r,13270)),Promise.resolve().then(r.bind(r,99730)),Promise.resolve().then(r.bind(r,89146)),Promise.resolve().then(r.bind(r,19078)),Promise.resolve().then(r.bind(r,67854)),Promise.resolve().then(r.bind(r,69050)),Promise.resolve().then(r.bind(r,63739)),Promise.resolve().then(r.bind(r,33976)),Promise.resolve().then(r.bind(r,12537)),Promise.resolve().then(r.bind(r,97485)),Promise.resolve().then(r.bind(r,41923)),Promise.resolve().then(r.bind(r,73868)),Promise.resolve().then(r.bind(r,53511)),Promise.resolve().then(r.bind(r,2018)),Promise.resolve().then(r.bind(r,18487)),Promise.resolve().then(r.bind(r,98346)),Promise.resolve().then(r.bind(r,14884)),Promise.resolve().then(r.bind(r,85314)),Promise.resolve().then(r.bind(r,17280)),Promise.resolve().then(r.bind(r,8855)),Promise.resolve().then(r.bind(r,86631)),Promise.resolve().then(r.bind(r,2604)),Promise.resolve().then(r.bind(r,27237)),Promise.resolve().then(r.bind(r,49455)),Promise.resolve().then(r.bind(r,39211)),Promise.resolve().then(r.bind(r,56360)),Promise.resolve().then(r.t.bind(r,54400,23))},42146:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]])},59728:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])},60621:(e,t,r)=>{"use strict";r.d(t,{F:()=>i});var a=r(47989);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,n=a.$,i=(e,t)=>r=>{var a;if((null==t?void 0:t.variants)==null)return n(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:i,defaultVariants:o}=t,l=Object.keys(i).map(e=>{let t=null==r?void 0:r[e],a=null==o?void 0:o[e];if(null===t)return null;let n=s(t)||s(a);return i[e][n]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,a]=t;return void 0===a||(e[r]=a),e},{});return n(e,l,null==t||null==(a=t.compoundVariants)?void 0:a.reduce((e,t)=>{let{class:r,className:a,...s}=t;return Object.entries(s).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...o,...d}[t]):({...o,...d})[t]===r})?[...e,r,a]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},63514:(e,t,r)=>{"use strict";r.d(t,{$d:()=>n,S9:()=>i,Zi:()=>s});var a=r(99356);let s={rootsChanged:"reflex:roots-changed",topicsChanged:e=>"reflex:topics-changed:".concat(e),kbChanged:e=>"reflex:kb-changed:".concat(e)};function n(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function i(e,t){(0,a.useEffect)(()=>{let r=e=>t(e.detail);return window.addEventListener(e,r),()=>window.removeEventListener(e,r)},[e,t])}},69205:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},69285:(e,t,r)=>{"use strict";var a=r(48849);r.o(a,"usePathname")&&r.d(t,{usePathname:function(){return a.usePathname}}),r.o(a,"useRouter")&&r.d(t,{useRouter:function(){return a.useRouter}})},69709:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},72754:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("FolderPlus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},80192:(e,t,r)=>{"use strict";r.d(t,{F:()=>i});var a=r(4624);r(99356);var s=r(14884),n=r(13506);function i(e){let{className:t,children:r,...i}=e;return(0,a.jsxs)(s.Root,{"data-slot":"scroll-area",className:(0,n.cn)("relative",t),...i,children:[(0,a.jsx)(s.Viewport,{"data-slot":"scroll-area-viewport",className:"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",children:r}),(0,a.jsx)(o,{}),(0,a.jsx)(s.Corner,{})]})}function o(e){let{className:t,orientation:r="vertical",...i}=e;return(0,a.jsx)(s.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:r,className:(0,n.cn)("flex touch-none p-px transition-colors select-none","vertical"===r&&"h-full w-2.5 border-l border-l-transparent","horizontal"===r&&"h-2.5 flex-col border-t border-t-transparent",t),...i,children:(0,a.jsx)(s.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"relative flex-1 rounded-full bg-border"})})}},85253:(e,t,r)=>{"use strict";r.d(t,{$:()=>l});var a=r(4624);r(99356);var s=r(60621),n=r(50362),i=r(13506);let o=(0,s.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:r="default",size:s="default",asChild:l=!1,...d}=e,c=l?n.bL:"button";return(0,a.jsx)(c,{"data-slot":"button","data-variant":r,"data-size":s,className:(0,i.cn)(o({variant:r,size:s,className:t})),...d})}},91074:(e,t,r)=>{"use strict";r.d(t,{Separator:()=>i});var a=r(4624);r(99356);var s=r(44188),n=r(13506);function i(e){let{className:t,orientation:r="horizontal",decorative:i=!0,...o}=e;return(0,a.jsx)(s.b,{"data-slot":"separator",decorative:i,orientation:r,className:(0,n.cn)("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...o})}}},e=>{e.O(0,[4400,4678,9776,6785,3335,9411,4933,146,7358],()=>e(e.s=32740)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9429],{3239:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},3747:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},4959:(e,t,r)=>{"use strict";r.d(t,{BT:()=>l,Wu:()=>d,ZB:()=>o,Zp:()=>n,aR:()=>i,wL:()=>c});var a=r(4624);r(99356);var s=r(13506);function n(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,s.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...r})}function i(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...r})}function l(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,s.cn)("text-sm text-muted-foreground",t),...r})}function d(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...r})}function c(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-footer",className:(0,s.cn)("flex items-center px-6 [.border-t]:pt-6",t),...r})}},9923:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("Folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},13506:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var a=r(47989),s=r(55701);function n(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,a.$)(t))}},13561:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},15523:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var a=r(4624);r(99356);var s=r(13506);function n(e){let{className:t,type:r,...n}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,s.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...n})}},29464:(e,t,r)=>{"use strict";r.d(t,{DirectoryPicker:()=>C});var a=r(4624),s=r(99356),n=r(69285),i=r(49411);let o=(0,r(45804).A)("House",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]]);var l=r(3747),d=r(59728),c=r(42146),u=r(72754),h=r(3239),m=r(13561),p=r(69709),x=r(69205),v=r(9923),f=r(56221),b=r(85253),g=r(4959),j=r(15523),y=r(80192),k=r(91074),w=r(7911);let N=(0,w.createServerReference)("403374ce953cf2d2f2a281c7f3e4732e217197b54b",w.callServer,void 0,w.findSourceMapURL,"addRootAction");var P=r(63514);let A=(0,w.createServerReference)("404bfac571e589cd36e44773447bff8e56489ab370",w.callServer,void 0,w.findSourceMapURL,"browseAction"),S=(0,w.createServerReference)("6015034e72ff93b73fa288187ab5fc603bc83cf20a",w.callServer,void 0,w.findSourceMapURL,"createDirectoryAction");function C(e){let{initialPath:t}=e,r=(0,i.c)("roots"),[p,x]=(0,s.useState)(t),[v,w]=(0,s.useState)(t),[C,R]=(0,s.useState)(null),[D,$]=(0,s.useState)([]),[_,E]=(0,s.useState)(t),[H,T]=(0,s.useState)(!1),[Z,B]=(0,s.useTransition)(),[O,V]=(0,s.useTransition)(),[U,q]=(0,s.useState)(!1),[I,W]=(0,s.useState)(""),[K,Q]=(0,s.useTransition)(),X=(0,n.useRouter)();(0,s.useEffect)(()=>{G(t)},[]);let G=e=>{B(async()=>{let t=await A(e);if(!t.ok){var r;f.oR.error(null!=(r=t.error)?r:"Failed to browse");return}x(t.path),w(t.path),R(t.parent),E(t.path),$(t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden)))})},J=async e=>{let t=function e(t,r){for(let a of t){if(a.absPath===r)return a;if(a.expanded){let t=e(a.children,r);if(t)return t}}return null}(D,e);if(!t)return;if(t.expanded)return void $(t=>L(t,e,e=>({...e,expanded:!1})));if(t.loaded)return void $(t=>L(t,e,e=>({...e,expanded:!0})));$(t=>L(t,e,e=>({...e,loading:!0})));let r=await A(e);if(!r.ok){var a;f.oR.error(null!=(a=r.error)?a:"Failed to browse"),$(t=>L(t,e,e=>({...e,loading:!1})));return}let s=r.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden));$(t=>L(t,e,e=>({...e,loading:!1,loaded:!0,expanded:!0,children:s})))},Y=async e=>{if(e===p){let t=await A(e);t.ok&&$(t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden)));return}let t=await A(e);if(!t.ok)return;let r=t.entries.filter(e=>e.isDir).map(e=>F(e.name,e.absPath,e.hidden));$(t=>L(t,e,e=>({...e,children:r,loaded:!0,expanded:!0})))};return(0,a.jsxs)(g.Zp,{children:[(0,a.jsxs)(g.aR,{children:[(0,a.jsxs)(g.ZB,{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("span",{children:"Browse"}),(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",onClick:()=>G(t),disabled:Z,children:[(0,a.jsx)(o,{className:"mr-1 h-4 w-4"})," Home"]})]}),(0,a.jsxs)("form",{className:"flex gap-2 mt-2",onSubmit:e=>{e.preventDefault(),G(v)},children:[(0,a.jsx)(j.p,{value:v,onChange:e=>w(e.target.value),placeholder:"/absolute/path",className:"font-mono text-xs"}),(0,a.jsx)(b.$,{type:"submit",variant:"secondary",disabled:Z,children:(0,a.jsx)(l.A,{className:"h-4 w-4 ".concat(Z?"animate-spin":"")})})]})]}),(0,a.jsx)(k.Separator,{}),(0,a.jsx)(g.Wu,{className:"px-2 py-2",children:(0,a.jsxs)(y.F,{className:"h-[460px]",children:[(0,a.jsxs)("div",{className:"px-2 py-1 flex items-center gap-2",children:[(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",disabled:!C||Z,onClick:()=>C&&G(C),className:"h-8",children:[(0,a.jsx)(d.A,{className:"mr-1 h-4 w-4"})," Up"]}),(0,a.jsxs)("button",{type:"button",onClick:()=>E(p),className:"flex-1 flex items-center gap-2 px-2 py-1 text-sm rounded-md hover:bg-accent ".concat(_===p?"bg-accent":""),title:p,children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,a.jsx)("span",{className:"truncate font-mono text-xs",children:"."}),(0,a.jsxs)("span",{className:"text-muted-foreground text-[11px] truncate",children:["(",M(p),")"]})]}),(0,a.jsxs)(b.$,{variant:"ghost",size:"sm",disabled:Z||K,onClick:()=>{q(e=>!e),W("")},className:"h-8",title:r("picker.createFolderTitle",{parent:M(_)}),children:[(0,a.jsx)(u.A,{className:"mr-1 h-4 w-4"})," ",r("picker.createButton")]}),(0,a.jsxs)("label",{className:"flex items-center gap-1 text-xs text-muted-foreground select-none",children:[(0,a.jsx)("input",{type:"checkbox",checked:H,onChange:e=>T(e.target.checked)}),"hidden"]})]}),U&&(0,a.jsxs)("form",{className:"px-2 pb-2 flex items-center gap-2",onSubmit:e=>{e.preventDefault();let t=I.trim();t&&Q(async()=>{let e=await S(_,t);if(!e.ok){var a;f.oR.error(null!=(a=e.error)?a:r("picker.createFolderFailed"));return}f.oR.success(r("picker.folderCreated")),q(!1),W(""),await Y(_),E(e.path)})},children:[(0,a.jsxs)("span",{className:"text-[11px] text-muted-foreground font-mono truncate max-w-[40%]",children:[_,"/"]}),(0,a.jsx)(j.p,{autoFocus:!0,value:I,onChange:e=>W(e.target.value),placeholder:r("picker.newFolderPlaceholder"),className:"h-8 text-sm flex-1",disabled:K,onKeyDown:e=>{"Escape"===e.key&&(e.preventDefault(),q(!1),W(""))}}),(0,a.jsxs)(b.$,{type:"submit",size:"sm",disabled:K||!I.trim(),className:"h-8",children:[K?(0,a.jsx)(h.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(u.A,{className:"mr-1 h-3.5 w-3.5"}),r("picker.createButton")]}),(0,a.jsx)(b.$,{type:"button",size:"sm",variant:"ghost",onClick:()=>{q(!1),W("")},className:"h-8",children:(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"})})]}),(0,a.jsx)(k.Separator,{className:"my-1"}),Z?(0,a.jsxs)("div",{className:"flex items-center justify-center py-10 text-sm text-muted-foreground",children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4 animate-spin"})," Loading…"]}):0===D.length?(0,a.jsx)("div",{className:"px-4 py-10 text-center text-sm text-muted-foreground",children:"No subdirectories."}):(0,a.jsx)(z,{nodes:D,selected:_,onSelect:E,onToggle:J,showHidden:H,depth:0})]})}),(0,a.jsx)(k.Separator,{}),(0,a.jsxs)(g.wL,{className:"flex items-center justify-between gap-4",children:[(0,a.jsxs)("div",{className:"text-xs text-muted-foreground font-mono truncate",children:["Selected: ",_]}),(0,a.jsx)(b.$,{onClick:()=>{V(async()=>{let e=await N(_);if(!e.ok){var t;f.oR.error(null!=(t=e.error)?t:"Failed to add");return}f.oR.success("Directory added"),(0,P.$d)(P.Zi.rootsChanged),e.onboardingTopicId?X.push("/roots/".concat(e.id,"/chat/").concat(e.onboardingTopicId)):X.push("/roots/".concat(e.id))})},disabled:O||Z,children:O?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4 animate-spin"})," Adding…"]}):"Add this directory"})]})]})}function z(e){let{nodes:t,selected:r,onSelect:s,onToggle:n,showHidden:i,depth:o}=e;return(0,a.jsx)("ul",{children:t.filter(e=>i||!e.hidden).map(e=>(0,a.jsxs)("li",{children:[(0,a.jsx)(R,{node:e,depth:o,selected:r,onSelect:s,onToggle:n}),e.expanded&&e.children.length>0&&(0,a.jsx)(z,{nodes:e.children,selected:r,onSelect:s,onToggle:n,showHidden:i,depth:o+1}),e.expanded&&e.loaded&&0===e.children.length&&(0,a.jsx)("div",{className:"text-xs text-muted-foreground italic px-2 py-1",style:{paddingLeft:16*o+44},children:"(empty)"})]},e.absPath))})}function R(e){let{node:t,depth:r,selected:s,onSelect:n,onToggle:i}=e,o=s===t.absPath;return(0,a.jsxs)("div",{className:"group flex items-center gap-1 pr-2 py-1 rounded-md hover:bg-accent/60 ".concat(o?"bg-accent":""),style:{paddingLeft:16*r+4},children:[(0,a.jsx)("button",{type:"button",onClick:()=>i(t.absPath),className:"h-6 w-6 flex items-center justify-center text-muted-foreground hover:text-foreground shrink-0","aria-label":t.expanded?"Collapse":"Expand",children:t.loading?(0,a.jsx)(h.A,{className:"h-3.5 w-3.5 animate-spin"}):t.expanded?(0,a.jsx)(p.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"})}),(0,a.jsxs)("button",{type:"button",onClick:()=>n(t.absPath),onDoubleClick:()=>i(t.absPath),className:"flex-1 min-w-0 flex items-center gap-2 text-left text-sm",children:[t.expanded?(0,a.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}):(0,a.jsx)(v.A,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,a.jsx)("span",{className:"truncate ".concat(t.hidden?"opacity-60":""),children:t.name})]})]})}function F(e,t,r){return{name:e,absPath:t,hidden:r,loaded:!1,loading:!1,expanded:!1,children:[]}}function L(e,t,r){return e.map(e=>e.absPath===t?r(e):e.children.length>0?{...e,children:L(e.children,t,r)}:e)}function M(e){var t;let r=e.split("/").filter(Boolean);return null!=(t=r[r.length-1])?t:e}},32740:(e,t,r)=>{Promise.resolve().then(r.bind(r,29464)),Promise.resolve().then(r.bind(r,96253)),Promise.resolve().then(r.bind(r,28050)),Promise.resolve().then(r.bind(r,94904)),Promise.resolve().then(r.bind(r,13270)),Promise.resolve().then(r.bind(r,99730)),Promise.resolve().then(r.bind(r,89146)),Promise.resolve().then(r.bind(r,19078)),Promise.resolve().then(r.bind(r,67854)),Promise.resolve().then(r.bind(r,69050)),Promise.resolve().then(r.bind(r,63739)),Promise.resolve().then(r.bind(r,33976)),Promise.resolve().then(r.bind(r,12537)),Promise.resolve().then(r.bind(r,97485)),Promise.resolve().then(r.bind(r,41923)),Promise.resolve().then(r.bind(r,73868)),Promise.resolve().then(r.bind(r,53511)),Promise.resolve().then(r.bind(r,2018)),Promise.resolve().then(r.bind(r,18487)),Promise.resolve().then(r.bind(r,98346)),Promise.resolve().then(r.bind(r,14884)),Promise.resolve().then(r.bind(r,85314)),Promise.resolve().then(r.bind(r,17280)),Promise.resolve().then(r.bind(r,8855)),Promise.resolve().then(r.bind(r,86631)),Promise.resolve().then(r.bind(r,2604)),Promise.resolve().then(r.bind(r,27237)),Promise.resolve().then(r.bind(r,49455)),Promise.resolve().then(r.bind(r,39211)),Promise.resolve().then(r.bind(r,56360)),Promise.resolve().then(r.t.bind(r,54400,23))},42146:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]])},59728:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])},60621:(e,t,r)=>{"use strict";r.d(t,{F:()=>i});var a=r(47989);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,n=a.$,i=(e,t)=>r=>{var a;if((null==t?void 0:t.variants)==null)return n(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:i,defaultVariants:o}=t,l=Object.keys(i).map(e=>{let t=null==r?void 0:r[e],a=null==o?void 0:o[e];if(null===t)return null;let n=s(t)||s(a);return i[e][n]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,a]=t;return void 0===a||(e[r]=a),e},{});return n(e,l,null==t||null==(a=t.compoundVariants)?void 0:a.reduce((e,t)=>{let{class:r,className:a,...s}=t;return Object.entries(s).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...o,...d}[t]):({...o,...d})[t]===r})?[...e,r,a]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},63514:(e,t,r)=>{"use strict";r.d(t,{$d:()=>n,S9:()=>i,Zi:()=>s});var a=r(99356);let s={rootsChanged:"reflex:roots-changed",topicsChanged:e=>"reflex:topics-changed:".concat(e),kbChanged:e=>"reflex:kb-changed:".concat(e)};function n(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t}))}function i(e,t){(0,a.useEffect)(()=>{let r=e=>t(e.detail);return window.addEventListener(e,r),()=>window.removeEventListener(e,r)},[e,t])}},69205:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},69285:(e,t,r)=>{"use strict";var a=r(48849);r.o(a,"usePathname")&&r.d(t,{usePathname:function(){return a.usePathname}}),r.o(a,"useRouter")&&r.d(t,{useRouter:function(){return a.useRouter}})},69709:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},72754:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(45804).A)("FolderPlus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},80192:(e,t,r)=>{"use strict";r.d(t,{F:()=>i});var a=r(4624);r(99356);var s=r(14884),n=r(13506);function i(e){let{className:t,children:r,...i}=e;return(0,a.jsxs)(s.Root,{"data-slot":"scroll-area",className:(0,n.cn)("relative",t),...i,children:[(0,a.jsx)(s.Viewport,{"data-slot":"scroll-area-viewport",className:"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1",children:r}),(0,a.jsx)(o,{}),(0,a.jsx)(s.Corner,{})]})}function o(e){let{className:t,orientation:r="vertical",...i}=e;return(0,a.jsx)(s.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:r,className:(0,n.cn)("flex touch-none p-px transition-colors select-none","vertical"===r&&"h-full w-2.5 border-l border-l-transparent","horizontal"===r&&"h-2.5 flex-col border-t border-t-transparent",t),...i,children:(0,a.jsx)(s.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"relative flex-1 rounded-full bg-border"})})}},85253:(e,t,r)=>{"use strict";r.d(t,{$:()=>l});var a=r(4624);r(99356);var s=r(60621),n=r(50362),i=r(13506);let o=(0,s.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:r="default",size:s="default",asChild:l=!1,...d}=e,c=l?n.bL:"button";return(0,a.jsx)(c,{"data-slot":"button","data-variant":r,"data-size":s,className:(0,i.cn)(o({variant:r,size:s,className:t})),...d})}},91074:(e,t,r)=>{"use strict";r.d(t,{Separator:()=>i});var a=r(4624);r(99356);var s=r(44188),n=r(13506);function i(e){let{className:t,orientation:r="horizontal",decorative:i=!0,...o}=e;return(0,a.jsx)(s.b,{"data-slot":"separator",decorative:i,orientation:r,className:(0,n.cn)("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...o})}}},e=>{e.O(0,[4400,4678,9776,6785,3335,9411,4933,146,7358],()=>e(e.s=32740)),_N_E=e.O()}]);