@ranker/raxflow 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/dist/tui/components/LogsPanel.d.ts.map +1 -1
  2. package/dist/tui/components/LogsPanel.js +4 -3
  3. package/dist/tui/components/LogsPanel.js.map +1 -1
  4. package/dist/tui/components/MemoryPanel.d.ts.map +1 -1
  5. package/dist/tui/components/MemoryPanel.js +2 -2
  6. package/dist/tui/components/MemoryPanel.js.map +1 -1
  7. package/dist/tui/components/MetricsPanel.d.ts.map +1 -1
  8. package/dist/tui/components/MetricsPanel.js +2 -2
  9. package/dist/tui/components/MetricsPanel.js.map +1 -1
  10. package/dist/tui/components/StatusPanel.d.ts.map +1 -1
  11. package/dist/tui/components/StatusPanel.js +4 -3
  12. package/dist/tui/components/StatusPanel.js.map +1 -1
  13. package/package.json +4 -4
  14. package/src/setup/components/ProviderSelector.tsx +7 -6
  15. package/src/tui/App.tsx +15 -9
  16. package/src/tui/components/ChatPanel.tsx +7 -4
  17. package/src/tui/components/DAGPanel.tsx +11 -7
  18. package/src/tui/components/LogsPanel.tsx +6 -3
  19. package/src/tui/components/MemoryPanel.tsx +10 -7
  20. package/src/tui/components/MetricsPanel.tsx +8 -5
  21. package/src/tui/components/StatusPanel.tsx +12 -9
  22. package/dist/benchmark.d.ts.map +0 -1
  23. package/dist/benchmark.js +0 -123
  24. package/dist/benchmark.js.map +0 -1
  25. package/dist/bin.d.ts.map +0 -1
  26. package/dist/bin.js +0 -141
  27. package/dist/bin.js.map +0 -1
  28. package/dist/bootstrap.d.ts.map +0 -1
  29. package/dist/bootstrap.js +0 -22
  30. package/dist/bootstrap.js.map +0 -1
  31. package/dist/bridge-adapter-templates.d.ts.map +0 -1
  32. package/dist/bridge-adapter-templates.js +0 -185
  33. package/dist/bridge-adapter-templates.js.map +0 -1
  34. package/dist/bridge-test.d.ts.map +0 -1
  35. package/dist/bridge-test.js +0 -89
  36. package/dist/bridge-test.js.map +0 -1
  37. package/dist/dashboard.d.ts.map +0 -1
  38. package/dist/dashboard.js +0 -49
  39. package/dist/dashboard.js.map +0 -1
  40. package/dist/doctor.d.ts.map +0 -1
  41. package/dist/doctor.js +0 -70
  42. package/dist/doctor.js.map +0 -1
  43. package/dist/evolve.d.ts.map +0 -1
  44. package/dist/evolve.js +0 -48
  45. package/dist/evolve.js.map +0 -1
  46. package/dist/host-init-templates.d.ts.map +0 -1
  47. package/dist/host-init-templates.js +0 -119
  48. package/dist/host-init-templates.js.map +0 -1
  49. package/dist/hub/__tests__/commands.test.d.ts.map +0 -1
  50. package/dist/hub/__tests__/commands.test.js +0 -72
  51. package/dist/hub/__tests__/commands.test.js.map +0 -1
  52. package/dist/hub/__tests__/history.test.d.ts.map +0 -1
  53. package/dist/hub/__tests__/history.test.js +0 -119
  54. package/dist/hub/__tests__/history.test.js.map +0 -1
  55. package/dist/hub/__tests__/parser.test.d.ts.map +0 -1
  56. package/dist/hub/__tests__/parser.test.js +0 -92
  57. package/dist/hub/__tests__/parser.test.js.map +0 -1
  58. package/dist/hub/chat/ChatApp.d.ts +0 -2
  59. package/dist/hub/chat/ChatApp.d.ts.map +0 -1
  60. package/dist/hub/chat/ChatApp.js +0 -146
  61. package/dist/hub/chat/ChatApp.js.map +0 -1
  62. package/dist/hub/chat/components/ChatInput.d.ts +0 -9
  63. package/dist/hub/chat/components/ChatInput.d.ts.map +0 -1
  64. package/dist/hub/chat/components/ChatInput.js +0 -19
  65. package/dist/hub/chat/components/ChatInput.js.map +0 -1
  66. package/dist/hub/chat/components/MessageList.d.ts +0 -7
  67. package/dist/hub/chat/components/MessageList.d.ts.map +0 -1
  68. package/dist/hub/chat/components/MessageList.js +0 -6
  69. package/dist/hub/chat/components/MessageList.js.map +0 -1
  70. package/dist/hub/chat/context.d.ts.map +0 -1
  71. package/dist/hub/chat/context.js +0 -42
  72. package/dist/hub/chat/context.js.map +0 -1
  73. package/dist/hub/chat/hooks/useChatHistory.d.ts +0 -7
  74. package/dist/hub/chat/hooks/useChatHistory.d.ts.map +0 -1
  75. package/dist/hub/chat/hooks/useChatHistory.js +0 -31
  76. package/dist/hub/chat/hooks/useChatHistory.js.map +0 -1
  77. package/dist/hub/chat/index.d.ts.map +0 -1
  78. package/dist/hub/chat/index.js +0 -7
  79. package/dist/hub/chat/index.js.map +0 -1
  80. package/dist/hub/chat/intent-parser.d.ts.map +0 -1
  81. package/dist/hub/chat/intent-parser.js +0 -48
  82. package/dist/hub/chat/intent-parser.js.map +0 -1
  83. package/dist/hub/chat/types.d.ts.map +0 -1
  84. package/dist/hub/chat/types.js +0 -2
  85. package/dist/hub/chat/types.js.map +0 -1
  86. package/dist/hub/commands/agents.d.ts.map +0 -1
  87. package/dist/hub/commands/agents.js +0 -36
  88. package/dist/hub/commands/agents.js.map +0 -1
  89. package/dist/hub/commands/index.d.ts.map +0 -1
  90. package/dist/hub/commands/index.js +0 -123
  91. package/dist/hub/commands/index.js.map +0 -1
  92. package/dist/hub/commands/logs.d.ts.map +0 -1
  93. package/dist/hub/commands/logs.js +0 -53
  94. package/dist/hub/commands/logs.js.map +0 -1
  95. package/dist/hub/commands/memory.d.ts.map +0 -1
  96. package/dist/hub/commands/memory.js +0 -40
  97. package/dist/hub/commands/memory.js.map +0 -1
  98. package/dist/hub/commands/metrics.d.ts.map +0 -1
  99. package/dist/hub/commands/metrics.js +0 -35
  100. package/dist/hub/commands/metrics.js.map +0 -1
  101. package/dist/hub/commands/providers.d.ts.map +0 -1
  102. package/dist/hub/commands/providers.js +0 -26
  103. package/dist/hub/commands/providers.js.map +0 -1
  104. package/dist/hub/commands/run.d.ts.map +0 -1
  105. package/dist/hub/commands/run.js +0 -31
  106. package/dist/hub/commands/run.js.map +0 -1
  107. package/dist/hub/commands/status.d.ts.map +0 -1
  108. package/dist/hub/commands/status.js +0 -61
  109. package/dist/hub/commands/status.js.map +0 -1
  110. package/dist/hub/commands/workflows.d.ts.map +0 -1
  111. package/dist/hub/commands/workflows.js +0 -45
  112. package/dist/hub/commands/workflows.js.map +0 -1
  113. package/dist/hub/config-loader.d.ts.map +0 -1
  114. package/dist/hub/config-loader.js +0 -27
  115. package/dist/hub/config-loader.js.map +0 -1
  116. package/dist/hub/event-listener.d.ts +0 -6
  117. package/dist/hub/event-listener.d.ts.map +0 -1
  118. package/dist/hub/event-listener.js +0 -12
  119. package/dist/hub/event-listener.js.map +0 -1
  120. package/dist/hub/history.d.ts.map +0 -1
  121. package/dist/hub/history.js +0 -59
  122. package/dist/hub/history.js.map +0 -1
  123. package/dist/hub/index.d.ts.map +0 -1
  124. package/dist/hub/index.js +0 -114
  125. package/dist/hub/index.js.map +0 -1
  126. package/dist/hub/parser.d.ts.map +0 -1
  127. package/dist/hub/parser.js +0 -98
  128. package/dist/hub/parser.js.map +0 -1
  129. package/dist/hub/styles/borders.d.ts.map +0 -1
  130. package/dist/hub/styles/borders.js +0 -64
  131. package/dist/hub/styles/borders.js.map +0 -1
  132. package/dist/hub/styles/colors.d.ts.map +0 -1
  133. package/dist/hub/styles/colors.js +0 -115
  134. package/dist/hub/styles/colors.js.map +0 -1
  135. package/dist/hub/styles/typography.d.ts.map +0 -1
  136. package/dist/hub/styles/typography.js +0 -60
  137. package/dist/hub/styles/typography.js.map +0 -1
  138. package/dist/hub/tui/App.d.ts +0 -2
  139. package/dist/hub/tui/App.d.ts.map +0 -1
  140. package/dist/hub/tui/App.js +0 -53
  141. package/dist/hub/tui/App.js.map +0 -1
  142. package/dist/hub/tui/components/AgentQueue.d.ts +0 -6
  143. package/dist/hub/tui/components/AgentQueue.d.ts.map +0 -1
  144. package/dist/hub/tui/components/AgentQueue.js +0 -20
  145. package/dist/hub/tui/components/AgentQueue.js.map +0 -1
  146. package/dist/hub/tui/components/DAGPanel.d.ts +0 -16
  147. package/dist/hub/tui/components/DAGPanel.d.ts.map +0 -1
  148. package/dist/hub/tui/components/DAGPanel.js +0 -51
  149. package/dist/hub/tui/components/DAGPanel.js.map +0 -1
  150. package/dist/hub/tui/components/Header.d.ts +0 -7
  151. package/dist/hub/tui/components/Header.d.ts.map +0 -1
  152. package/dist/hub/tui/components/Header.js +0 -17
  153. package/dist/hub/tui/components/Header.js.map +0 -1
  154. package/dist/hub/tui/components/LogsPanel.d.ts +0 -6
  155. package/dist/hub/tui/components/LogsPanel.d.ts.map +0 -1
  156. package/dist/hub/tui/components/LogsPanel.js +0 -26
  157. package/dist/hub/tui/components/LogsPanel.js.map +0 -1
  158. package/dist/hub/tui/components/StatusBar.d.ts +0 -8
  159. package/dist/hub/tui/components/StatusBar.d.ts.map +0 -1
  160. package/dist/hub/tui/components/StatusBar.js +0 -7
  161. package/dist/hub/tui/components/StatusBar.js.map +0 -1
  162. package/dist/hub/tui/hooks/useEvents.d.ts +0 -2
  163. package/dist/hub/tui/hooks/useEvents.d.ts.map +0 -1
  164. package/dist/hub/tui/hooks/useEvents.js +0 -13
  165. package/dist/hub/tui/hooks/useEvents.js.map +0 -1
  166. package/dist/hub/tui/index.d.ts.map +0 -1
  167. package/dist/hub/tui/index.js +0 -7
  168. package/dist/hub/tui/index.js.map +0 -1
  169. package/dist/hub/tui/types.d.ts.map +0 -1
  170. package/dist/hub/tui/types.js +0 -2
  171. package/dist/hub/tui/types.js.map +0 -1
  172. package/dist/hub/types.d.ts.map +0 -1
  173. package/dist/hub/types.js +0 -2
  174. package/dist/hub/types.js.map +0 -1
  175. package/dist/index.d.ts.map +0 -1
  176. package/dist/index.js +0 -11
  177. package/dist/index.js.map +0 -1
  178. package/dist/init-host.d.ts.map +0 -1
  179. package/dist/init-host.js +0 -232
  180. package/dist/init-host.js.map +0 -1
  181. package/dist/install.d.ts.map +0 -1
  182. package/dist/install.js +0 -99
  183. package/dist/install.js.map +0 -1
  184. package/dist/run.d.ts.map +0 -1
  185. package/dist/run.js +0 -238
  186. package/dist/run.js.map +0 -1
  187. package/dist/setup/components/ApiKeyInput.d.ts +0 -25
  188. package/dist/setup/components/ApiKeyInput.d.ts.map +0 -1
  189. package/dist/setup/components/ApiKeyInput.js +0 -54
  190. package/dist/setup/components/ApiKeyInput.js.map +0 -1
  191. package/dist/setup/components/AsciiBanner.d.ts +0 -22
  192. package/dist/setup/components/AsciiBanner.d.ts.map +0 -1
  193. package/dist/setup/components/AsciiBanner.js +0 -55
  194. package/dist/setup/components/AsciiBanner.js.map +0 -1
  195. package/dist/setup/components/CliDetector.d.ts +0 -17
  196. package/dist/setup/components/CliDetector.d.ts.map +0 -1
  197. package/dist/setup/components/CliDetector.js +0 -79
  198. package/dist/setup/components/CliDetector.js.map +0 -1
  199. package/dist/setup/components/ModeSelector.d.ts +0 -8
  200. package/dist/setup/components/ModeSelector.d.ts.map +0 -1
  201. package/dist/setup/components/ModeSelector.js +0 -76
  202. package/dist/setup/components/ModeSelector.js.map +0 -1
  203. package/dist/setup/components/ProviderSelector.d.ts +0 -18
  204. package/dist/setup/components/ProviderSelector.d.ts.map +0 -1
  205. package/dist/setup/components/ProviderSelector.js +0 -97
  206. package/dist/setup/components/ProviderSelector.js.map +0 -1
  207. package/dist/setup/components/SetupWizard.d.ts +0 -2
  208. package/dist/setup/components/SetupWizard.d.ts.map +0 -1
  209. package/dist/setup/components/SetupWizard.js +0 -212
  210. package/dist/setup/components/SetupWizard.js.map +0 -1
  211. package/dist/setup/components/StepIndicator.d.ts +0 -13
  212. package/dist/setup/components/StepIndicator.d.ts.map +0 -1
  213. package/dist/setup/components/StepIndicator.js +0 -18
  214. package/dist/setup/components/StepIndicator.js.map +0 -1
  215. package/dist/setup/components/SuccessScreen.d.ts +0 -18
  216. package/dist/setup/components/SuccessScreen.d.ts.map +0 -1
  217. package/dist/setup/components/SuccessScreen.js +0 -38
  218. package/dist/setup/components/SuccessScreen.js.map +0 -1
  219. package/dist/setup/index.d.ts +0 -12
  220. package/dist/setup/index.d.ts.map +0 -1
  221. package/dist/setup/index.js +0 -29
  222. package/dist/setup/index.js.map +0 -1
  223. package/dist/setup/utils/cli-detection.d.ts +0 -12
  224. package/dist/setup/utils/cli-detection.d.ts.map +0 -1
  225. package/dist/setup/utils/cli-detection.js +0 -83
  226. package/dist/setup/utils/cli-detection.js.map +0 -1
  227. package/dist/setup/utils/config-writer.d.ts +0 -43
  228. package/dist/setup/utils/config-writer.d.ts.map +0 -1
  229. package/dist/setup/utils/config-writer.js +0 -180
  230. package/dist/setup/utils/config-writer.js.map +0 -1
  231. package/dist/styles.d.ts.map +0 -1
  232. package/dist/styles.js +0 -12
  233. package/dist/styles.js.map +0 -1
  234. package/dist/tui/App.d.ts +0 -3
  235. package/dist/tui/App.d.ts.map +0 -1
  236. package/dist/tui/App.js +0 -131
  237. package/dist/tui/App.js.map +0 -1
  238. package/dist/tui/components/AgentStateIcon.d.ts +0 -18
  239. package/dist/tui/components/AgentStateIcon.d.ts.map +0 -1
  240. package/dist/tui/components/AgentStateIcon.js +0 -57
  241. package/dist/tui/components/AgentStateIcon.js.map +0 -1
  242. package/dist/tui/components/AnimatedBranch.d.ts +0 -39
  243. package/dist/tui/components/AnimatedBranch.d.ts.map +0 -1
  244. package/dist/tui/components/AnimatedBranch.js +0 -64
  245. package/dist/tui/components/AnimatedBranch.js.map +0 -1
  246. package/dist/tui/components/ChatPanel.d.ts +0 -16
  247. package/dist/tui/components/ChatPanel.d.ts.map +0 -1
  248. package/dist/tui/components/ChatPanel.js +0 -50
  249. package/dist/tui/components/ChatPanel.js.map +0 -1
  250. package/dist/tui/components/DAGPanel.d.ts +0 -36
  251. package/dist/tui/components/DAGPanel.d.ts.map +0 -1
  252. package/dist/tui/components/DAGPanel.js +0 -51
  253. package/dist/tui/components/DAGPanel.js.map +0 -1
  254. package/dist/tui/components/ExecutionTimeline.d.ts +0 -34
  255. package/dist/tui/components/ExecutionTimeline.d.ts.map +0 -1
  256. package/dist/tui/components/ExecutionTimeline.js +0 -67
  257. package/dist/tui/components/ExecutionTimeline.js.map +0 -1
  258. package/dist/tui/components/Header.d.ts +0 -12
  259. package/dist/tui/components/Header.d.ts.map +0 -1
  260. package/dist/tui/components/Header.js +0 -32
  261. package/dist/tui/components/Header.js.map +0 -1
  262. package/dist/tui/components/HelpOverlay.d.ts +0 -7
  263. package/dist/tui/components/HelpOverlay.d.ts.map +0 -1
  264. package/dist/tui/components/HelpOverlay.js +0 -60
  265. package/dist/tui/components/HelpOverlay.js.map +0 -1
  266. package/dist/tui/components/InputBar.d.ts +0 -10
  267. package/dist/tui/components/InputBar.d.ts.map +0 -1
  268. package/dist/tui/components/InputBar.js +0 -21
  269. package/dist/tui/components/InputBar.js.map +0 -1
  270. package/dist/tui/components/LogsPanel.d.ts +0 -9
  271. package/dist/tui/components/MemoryPanel.d.ts +0 -21
  272. package/dist/tui/components/MetricsPanel.d.ts +0 -18
  273. package/dist/tui/components/StatusPanel.d.ts +0 -23
  274. package/dist/tui/components/TaskTree.d.ts +0 -28
  275. package/dist/tui/components/TaskTree.d.ts.map +0 -1
  276. package/dist/tui/components/TaskTree.js +0 -29
  277. package/dist/tui/components/TaskTree.js.map +0 -1
  278. package/dist/tui/components/animations/ProgressBar.d.ts +0 -39
  279. package/dist/tui/components/animations/ProgressBar.d.ts.map +0 -1
  280. package/dist/tui/components/animations/ProgressBar.js +0 -39
  281. package/dist/tui/components/animations/ProgressBar.js.map +0 -1
  282. package/dist/tui/components/animations/Pulse.d.ts +0 -17
  283. package/dist/tui/components/animations/Pulse.d.ts.map +0 -1
  284. package/dist/tui/components/animations/Pulse.js +0 -47
  285. package/dist/tui/components/animations/Pulse.js.map +0 -1
  286. package/dist/tui/components/animations/Spinner.d.ts +0 -13
  287. package/dist/tui/components/animations/Spinner.d.ts.map +0 -1
  288. package/dist/tui/components/animations/Spinner.js +0 -36
  289. package/dist/tui/components/animations/Spinner.js.map +0 -1
  290. package/dist/tui/components/animations/StatusAnimator.d.ts +0 -27
  291. package/dist/tui/components/animations/StatusAnimator.d.ts.map +0 -1
  292. package/dist/tui/components/animations/StatusAnimator.js +0 -85
  293. package/dist/tui/components/animations/StatusAnimator.js.map +0 -1
  294. package/dist/tui/components/animations/TypingEffect.d.ts +0 -26
  295. package/dist/tui/components/animations/TypingEffect.d.ts.map +0 -1
  296. package/dist/tui/components/animations/TypingEffect.js +0 -59
  297. package/dist/tui/components/animations/TypingEffect.js.map +0 -1
  298. package/dist/tui/components/animations/index.d.ts +0 -8
  299. package/dist/tui/components/animations/index.d.ts.map +0 -1
  300. package/dist/tui/components/animations/index.js +0 -6
  301. package/dist/tui/components/animations/index.js.map +0 -1
  302. package/dist/tui/hooks/useAnimation.d.ts +0 -42
  303. package/dist/tui/hooks/useAnimation.d.ts.map +0 -1
  304. package/dist/tui/hooks/useAnimation.js +0 -212
  305. package/dist/tui/hooks/useAnimation.js.map +0 -1
  306. package/dist/tui/hooks/useAppState.d.ts +0 -65
  307. package/dist/tui/hooks/useAppState.d.ts.map +0 -1
  308. package/dist/tui/hooks/useAppState.js +0 -293
  309. package/dist/tui/hooks/useAppState.js.map +0 -1
  310. package/dist/tui/index.d.ts +0 -3
  311. package/dist/tui/index.d.ts.map +0 -1
  312. package/dist/tui/index.js +0 -8
  313. package/dist/tui/index.js.map +0 -1
  314. package/dist/tui/services/orchestrator.d.ts +0 -16
  315. package/dist/tui/services/orchestrator.d.ts.map +0 -1
  316. package/dist/tui/services/orchestrator.js +0 -152
  317. package/dist/tui/services/orchestrator.js.map +0 -1
  318. package/dist/tui/styles/borders.d.ts +0 -31
  319. package/dist/tui/styles/borders.d.ts.map +0 -1
  320. package/dist/tui/styles/borders.js +0 -47
  321. package/dist/tui/styles/borders.js.map +0 -1
  322. package/dist/tui/styles/colors.d.ts +0 -18
  323. package/dist/tui/styles/colors.d.ts.map +0 -1
  324. package/dist/tui/styles/colors.js +0 -18
  325. package/dist/tui/styles/colors.js.map +0 -1
  326. package/dist/tui/styles/index.d.ts +0 -6
  327. package/dist/tui/styles/index.d.ts.map +0 -1
  328. package/dist/tui/styles/index.js +0 -6
  329. package/dist/tui/styles/index.js.map +0 -1
  330. package/dist/tui/styles/indicators.d.ts +0 -67
  331. package/dist/tui/styles/indicators.d.ts.map +0 -1
  332. package/dist/tui/styles/indicators.js +0 -42
  333. package/dist/tui/styles/indicators.js.map +0 -1
  334. package/dist/tui/styles/layout.d.ts +0 -21
  335. package/dist/tui/styles/layout.d.ts.map +0 -1
  336. package/dist/tui/styles/layout.js +0 -42
  337. package/dist/tui/styles/layout.js.map +0 -1
  338. package/dist/tui/styles/providers.d.ts +0 -77
  339. package/dist/tui/styles/providers.d.ts.map +0 -1
  340. package/dist/tui/styles/providers.js +0 -31
  341. package/dist/tui/styles/providers.js.map +0 -1
  342. package/dist/tui/utils/animation.d.ts +0 -44
  343. package/dist/tui/utils/animation.d.ts.map +0 -1
  344. package/dist/tui/utils/animation.js +0 -107
  345. package/dist/tui/utils/animation.js.map +0 -1
  346. package/dist/vendor-manifests.d.ts.map +0 -1
  347. package/dist/vendor-manifests.js +0 -94
  348. package/dist/vendor-manifests.js.map +0 -1
  349. package/dist/ws-relay.d.ts +0 -12
  350. package/dist/ws-relay.d.ts.map +0 -1
  351. package/dist/ws-relay.js +0 -148
  352. package/dist/ws-relay.js.map +0 -1
@@ -1,67 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { memo, useMemo } from "react";
3
- import { Box, Text } from "ink";
4
- import { tuiColors } from "../styles/index.js";
5
- import { AnimatedBranch } from "./AnimatedBranch.js";
6
- const ACTIVE_MARKER_FRAMES = ["┃", "║", "┃", "║"];
7
- const BAR_COLORS = {
8
- done: tuiColors.success,
9
- running: tuiColors.warning,
10
- pending: tuiColors.textTertiary,
11
- };
12
- const STATUS_TEXT = {
13
- done: (endTime) => `done at ${endTime?.toFixed(1)}s`,
14
- running: () => "running...",
15
- pending: () => "pending",
16
- };
17
- function formatTime(s) {
18
- return `${s}s`;
19
- }
20
- const TimelineBar = memo(function TimelineBar({ level, timeScale, width, currentTime }) {
21
- const startCol = Math.floor(level.startTime * timeScale);
22
- const endCol = level.endTime
23
- ? Math.floor(level.endTime * timeScale)
24
- : Math.floor(currentTime * timeScale);
25
- const barWidth = Math.max(0, endCol - startCol);
26
- const beforeBar = "░".repeat(startCol);
27
- const barChar = level.status === 'done' ? "█" : level.status === 'running' ? "▓" : "░";
28
- const afterBar = "░".repeat(Math.max(0, width - endCol));
29
- const statusText = STATUS_TEXT[level.status](level.endTime);
30
- const paddedName = useMemo(() => level.name.padEnd(4), [level.name]);
31
- return (_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: tuiColors.textTertiary, children: [paddedName, " "] }), _jsxs(Text, { color: BAR_COLORS[level.status], children: [beforeBar, barChar.repeat(barWidth)] }), _jsx(Text, { color: tuiColors.textTertiary, children: afterBar }), _jsxs(Text, { color: tuiColors.textTertiary, children: [" ", statusText] })] }));
32
- });
33
- const AgentTimeline = memo(function AgentTimeline({ agent, timeScale, width, currentTime }) {
34
- const startCol = Math.floor(agent.startTime * timeScale);
35
- const endCol = agent.endTime
36
- ? Math.floor(agent.endTime * timeScale)
37
- : Math.floor(currentTime * timeScale);
38
- const barWidth = Math.max(0, endCol - startCol);
39
- const indent = " ".repeat(startCol);
40
- const bar = agent.isActive ? "─".repeat(barWidth) + "▶" : "─".repeat(barWidth) + "┘";
41
- const afterBar = " ".repeat(Math.max(0, width - endCol - 1));
42
- const agentColor = agent.color || (agent.isActive ? tuiColors.primary : tuiColors.textSecondary);
43
- const prefix = agent.isActive ? "▶" : "●";
44
- const paddedName = useMemo(() => agent.name.padEnd(10), [agent.name]);
45
- return (_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: agentColor, children: [prefix, " ", paddedName, " "] }), _jsx(Text, { color: tuiColors.textTertiary, children: indent }), _jsx(Text, { color: agentColor, children: bar }), _jsx(Text, { color: tuiColors.textTertiary, children: afterBar })] }));
46
- });
47
- export const ExecutionTimeline = memo(function ExecutionTimeline({ tick, totalDuration, currentTime, levels, agents, isActive = false, width = 50, }) {
48
- const borderColor = isActive ? tuiColors.primary : tuiColors.border;
49
- const timeScale = width / totalDuration;
50
- const markerPositions = [0, 5, 10, 15, 20];
51
- const activeMarker = isActive ? ACTIVE_MARKER_FRAMES[tick % ACTIVE_MARKER_FRAMES.length] : "│";
52
- const markerElements = useMemo(() => markerPositions.map((pos, idx) => (_jsx(Box, { width: 10, children: _jsx(Text, { color: tuiColors.textTertiary, children: formatTime(pos).padStart(6) }) }, idx))), []);
53
- const separatorElements = useMemo(() => Array.from({ length: 5 }).map((_, idx) => (_jsx(Box, { width: 10, children: _jsx(Text, { color: tuiColors.textTertiary, children: idx === 0 ? "│" : " │" }) }, idx))), []);
54
- const levelElements = useMemo(() => levels.map((level, idx) => (_jsx(Box, { marginBottom: 1, children: _jsx(TimelineBar, { level: level, timeScale: timeScale, width: width, currentTime: currentTime }) }, idx))), [levels, timeScale, width, currentTime]);
55
- const agentElements = useMemo(() => agents.map((agent, idx) => (_jsx(Box, { children: _jsx(AgentTimeline, { agent: agent, timeScale: timeScale, width: width, currentTime: currentTime }) }, idx))), [agents, timeScale, width, currentTime]);
56
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: borderColor, paddingX: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: tuiColors.primary, bold: true, children: "\u250C\u2500" }), _jsx(Text, { color: tuiColors.primary, bold: true, children: " EXECUTION_TIMELINE " }), _jsx(Text, { color: tuiColors.textTertiary, children: "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500" })] }), _jsx(Box, { flexDirection: "row", marginBottom: 1, children: markerElements }), _jsx(Box, { flexDirection: "row", marginBottom: 1, children: separatorElements }), _jsx(Box, { flexDirection: "row", marginBottom: 1, children: _jsx(Text, { color: tuiColors.textTertiary, children: "├" + "─".repeat(width - 2) + "┤" }) }), _jsx(Box, { flexDirection: "column", children: levelElements }), _jsx(Box, { flexDirection: "row", marginTop: 1, marginBottom: 1, children: _jsx(AnimatedBranch, { type: "vertical", tick: tick, animated: isActive }) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: tuiColors.textSecondary, children: "Agents:" }) }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: agentElements })] }));
57
- });
58
- export const MiniTimeline = memo(function MiniTimeline({ progress, tick, isActive, width = 30 }) {
59
- const filled = Math.floor((progress / 100) * width);
60
- const empty = width - filled;
61
- const currentPos = Math.min(filled, width - 1);
62
- const before = "─".repeat(currentPos);
63
- const marker = isActive ? "●" : "○";
64
- const after = "─".repeat(empty);
65
- return (_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: tuiColors.textTertiary, children: ["\u251C", before] }), _jsx(Text, { color: isActive ? tuiColors.primary : tuiColors.textSecondary, children: marker }), _jsxs(Text, { color: tuiColors.textTertiary, children: [after, "\u2524"] })] }));
66
- });
67
- //# sourceMappingURL=ExecutionTimeline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExecutionTimeline.js","sourceRoot":"","sources":["../../../src/tui/components/ExecutionTimeline.tsx"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import React from "react";
2
- interface HeaderProps {
3
- projectName: string;
4
- agentCount: number;
5
- provider: string;
6
- status: "ready" | "running" | "error";
7
- tick: number;
8
- activePanel: string;
9
- }
10
- export declare const Header: React.NamedExoticComponent<HeaderProps>;
11
- export {};
12
- //# sourceMappingURL=Header.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../src/tui/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAK7C,UAAU,WAAW;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAaD,eAAO,MAAM,MAAM,yCAmFjB,CAAC"}
@@ -1,32 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { memo, useMemo } from "react";
3
- import { Box, Text } from "ink";
4
- import { tuiColors, getStatusIndicator, getProviderTag } from "../styles/index.js";
5
- import { StatusPulse } from "./animations/index.js";
6
- const PANEL_NAMES = {
7
- chat: "CHAT",
8
- dag: "DAG",
9
- status: "STATUS",
10
- logs: "LOGS",
11
- metrics: "METRICS",
12
- memory: "MEMORY",
13
- };
14
- const PANELS = ["chat", "dag", "logs", "metrics", "memory"];
15
- export const Header = memo(function Header({ projectName, agentCount, provider, status, tick, activePanel }) {
16
- const statusInfo = useMemo(() => getStatusIndicator(status), [status]);
17
- const providerInfo = useMemo(() => getProviderTag(provider), [provider]);
18
- const statusText = status === "ready" ? "ONLINE" : status === "running" ? "RUNNING" : "ERROR";
19
- const statusColor = status === "ready"
20
- ? tuiColors.success
21
- : status === "running"
22
- ? tuiColors.warning
23
- : tuiColors.error;
24
- const pulseStatus = status === "ready"
25
- ? "online"
26
- : status === "running"
27
- ? "running"
28
- : "error";
29
- const panelElements = useMemo(() => PANELS.map((panel) => (_jsx(Box, { marginRight: 1, children: _jsxs(Text, { color: activePanel === panel ? tuiColors.primary : tuiColors.textTertiary, bold: activePanel === panel, children: ["[", PANEL_NAMES[panel], "]"] }) }, panel))), [activePanel]);
30
- return (_jsxs(Box, { flexDirection: "column", width: "100%", children: [_jsxs(Box, { flexDirection: "row", justifyContent: "space-between", alignItems: "center", paddingX: 1, borderStyle: "single", borderColor: tuiColors.border, children: [_jsxs(Box, { flexDirection: "row", alignItems: "center", children: [_jsx(Text, { color: tuiColors.primary, bold: true, children: "\u25A0" }), _jsx(Text, { color: tuiColors.textPrimary, bold: true, children: " RAXFLOW" }), _jsx(Text, { color: tuiColors.textSecondary, children: " HUB" })] }), _jsxs(Box, { flexDirection: "row", alignItems: "center", gap: 1, children: [_jsx(Text, { color: tuiColors.textTertiary, children: "Project:" }), _jsxs(Text, { color: tuiColors.textPrimary, children: [" ", projectName] }), _jsx(Text, { color: tuiColors.textQuaternary, children: " \u2502" }), _jsx(Text, { color: tuiColors.textTertiary, children: " Agents:" }), _jsxs(Text, { color: tuiColors.success, children: [" ", agentCount, "/12"] }), _jsx(Text, { color: tuiColors.textQuaternary, children: " \u2502" }), _jsx(Text, { color: tuiColors.textSecondary, children: providerInfo.code }), _jsx(Text, { color: statusColor, children: " " }), _jsx(StatusPulse, { status: pulseStatus, tick: tick }), _jsxs(Text, { color: statusColor, children: [" ", statusText] })] })] }), _jsx(Box, { borderStyle: "single", borderColor: tuiColors.primary, paddingX: 1, children: _jsx(Text, { color: tuiColors.textTertiary, italic: true, children: "Orchestrator that Evolves with Your Host Tools" }) }), _jsxs(Box, { flexDirection: "row", paddingX: 1, justifyContent: "space-between", children: [_jsx(Box, { flexDirection: "row", children: panelElements }), _jsx(Box, { flexDirection: "row", children: _jsx(Text, { color: tuiColors.textQuaternary, children: "Tab:Switch \u2502 \u2190:View \u2502 ?:Help \u2502 Ctrl+C:Quit" }) })] })] }));
31
- });
32
- //# sourceMappingURL=Header.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/tui/components/Header.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import React from "react";
2
- interface HelpOverlayProps {
3
- onDismiss: () => void;
4
- }
5
- export declare const HelpOverlay: React.NamedExoticComponent<HelpOverlayProps>;
6
- export {};
7
- //# sourceMappingURL=HelpOverlay.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HelpOverlay.d.ts","sourceRoot":"","sources":["../../../src/tui/components/HelpOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAI7C,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAsDD,eAAO,MAAM,WAAW,8CA+EtB,CAAC"}
@@ -1,60 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { memo, useMemo } from "react";
3
- import { Box, Text } from "ink";
4
- import { tuiColors } from "../styles/index.js";
5
- const COMMAND_SECTIONS = [
6
- {
7
- title: "EXECUTION",
8
- items: [
9
- ["run <prompt>", "Execute workflow"],
10
- ["run -w <file>", "With blueprint"],
11
- ["run -p <n>", "Max parallel agents"],
12
- ["retry", "Relaunch last workflow"],
13
- ["stop / pause", "Control execution"],
14
- ],
15
- },
16
- {
17
- title: "NAVIGATION",
18
- items: [
19
- ["status", "System overview"],
20
- ["agents", "Agent list & status"],
21
- ["providers", "Provider status"],
22
- ["workflows", "Available blueprints"],
23
- ["memory", "QSGM graph view"],
24
- ],
25
- },
26
- {
27
- title: "MONITORING",
28
- items: [
29
- ["logs", "Real-time logs"],
30
- ["logs -f", "Follow mode"],
31
- ["metrics", "Performance stats"],
32
- ["evolve", "Evolution history"],
33
- ["doctor", "System diagnostic"],
34
- ],
35
- },
36
- ];
37
- const KEYBOARD_SHORTCUTS = [
38
- ["Tab", "Cycle panels"],
39
- ["F1-F8", "Jump to panel"],
40
- ["Ctrl+C", "Quit"],
41
- ["Esc", "Close overlay"],
42
- ["?", "Toggle help"],
43
- ];
44
- const FUNCTION_KEYS = [
45
- { key: "F1", label: "Help" },
46
- { key: "F2", label: "Agents" },
47
- { key: "F3", label: "Providers" },
48
- { key: "F4", label: "Workflows" },
49
- { key: "F5", label: "Logs" },
50
- { key: "F6", label: "Metrics" },
51
- { key: "F7", label: "Memory" },
52
- { key: "F8", label: "Dashboard" },
53
- ];
54
- export const HelpOverlay = memo(function HelpOverlay({ onDismiss }) {
55
- const functionKeyElements = useMemo(() => FUNCTION_KEYS.map((fn) => (_jsxs(Box, { marginRight: 2, children: [_jsxs(Text, { color: tuiColors.primary, children: ["[", fn.key, "]"] }), _jsxs(Text, { color: tuiColors.textSecondary, children: [" ", fn.label] })] }, fn.key))), []);
56
- const sectionElements = useMemo(() => COMMAND_SECTIONS.map((section) => (_jsxs(Box, { flexDirection: "column", width: 28, marginRight: 2, children: [_jsxs(Text, { color: tuiColors.primary, bold: true, children: ["\u250C\u2500 ", section.title, " \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"] }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: section.items.map(([cmd, desc]) => (_jsxs(Box, { flexDirection: "row", marginBottom: 1, children: [_jsx(Text, { color: tuiColors.textPrimary, children: cmd.padEnd(14) }), _jsx(Text, { color: tuiColors.textTertiary, children: desc })] }, cmd))) })] }, section.title))), []);
57
- const shortcutElements = useMemo(() => KEYBOARD_SHORTCUTS.map(([key, action]) => (_jsxs(Box, { marginRight: 3, children: [_jsxs(Text, { color: tuiColors.textPrimary, children: ["[", key.padEnd(6), "]"] }), _jsxs(Text, { color: tuiColors.textTertiary, children: [" ", action] })] }, key))), []);
58
- return (_jsxs(Box, { flexDirection: "column", flexGrow: 1, borderStyle: "single", borderColor: tuiColors.primary, paddingX: 2, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: tuiColors.primary, bold: true, children: "\u25A0 RAXFLOW HELP" }), _jsx(Text, { color: tuiColors.textTertiary, children: " \u2500\u2500 Press [Esc] or [q] to close" })] }), _jsx(Box, { borderStyle: "single", borderColor: tuiColors.border, marginBottom: 1, children: _jsx(Text, { color: tuiColors.textTertiary, children: "Orchestrator that Evolves with Your Host Tools" }) }), _jsx(Box, { flexDirection: "row", marginBottom: 1, children: functionKeyElements }), _jsx(Box, { flexDirection: "row", flexGrow: 1, children: sectionElements }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: tuiColors.primary, bold: true, children: "\u250C\u2500 KEYBOARD \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500" }) }), _jsx(Box, { flexDirection: "row", children: shortcutElements }), _jsx(Box, { borderStyle: "single", borderColor: tuiColors.border, marginTop: 1, children: _jsx(Text, { color: tuiColors.textTertiary, children: "Type your prompt to execute a workflow, or use /run \"...\" for explicit execution" }) })] }));
59
- });
60
- //# sourceMappingURL=HelpOverlay.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HelpOverlay.js","sourceRoot":"","sources":["../../../src/tui/components/HelpOverlay.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import React from "react";
2
- interface InputBarProps {
3
- onSubmit: (input: string) => void;
4
- suggestions: string[];
5
- isProcessing: boolean;
6
- projectName: string;
7
- }
8
- export declare const InputBar: React.NamedExoticComponent<InputBarProps>;
9
- export {};
10
- //# sourceMappingURL=InputBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InputBar.d.ts","sourceRoot":"","sources":["../../../src/tui/components/InputBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAKpE,UAAU,aAAa;IACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,QAAQ,2CAwDnB,CAAC"}
@@ -1,21 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, memo, useMemo, useCallback } from "react";
3
- import { Box, Text } from "ink";
4
- import TextInput from "ink-text-input";
5
- import { tuiColors } from "../styles/index.js";
6
- export const InputBar = memo(function InputBar({ onSubmit, suggestions, isProcessing, projectName }) {
7
- const [input, setInput] = useState("");
8
- const handleSubmit = useCallback((value) => {
9
- if (value.trim()) {
10
- onSubmit(value);
11
- setInput("");
12
- }
13
- }, [onSubmit]);
14
- const handleChange = useCallback((value) => {
15
- setInput(value);
16
- }, []);
17
- const filteredSuggestions = useMemo(() => suggestions.filter((s) => s.toLowerCase().startsWith(input.toLowerCase())).slice(0, 5), [suggestions, input]);
18
- const showSuggestions = input.startsWith("/") && filteredSuggestions.length > 0;
19
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: tuiColors.border, paddingX: 1, children: [showSuggestions && (_jsx(Box, { flexDirection: "row", marginBottom: 1, children: filteredSuggestions.map((s) => (_jsx(Box, { marginRight: 2, children: _jsx(Text, { color: tuiColors.primary, children: s }) }, s))) })), _jsxs(Box, { flexDirection: "row", alignItems: "center", children: [_jsx(Text, { color: tuiColors.primary, bold: true, children: "raxflow://" }), _jsx(Text, { color: tuiColors.textSecondary, children: projectName }), _jsx(Text, { color: tuiColors.textPrimary, children: " > " }), _jsx(Box, { flexGrow: 1, children: _jsx(TextInput, { value: input, onChange: handleChange, onSubmit: handleSubmit, placeholder: "Enter prompt or /help...", showCursor: true }) }), isProcessing && _jsx(Text, { color: tuiColors.warning, children: " \u25CF" })] }), _jsxs(Box, { flexDirection: "row", marginTop: 1, children: [_jsx(Text, { color: tuiColors.textQuaternary, children: "[Ctrl+C] Quit" }), _jsx(Text, { color: tuiColors.textQuaternary, children: " \u2502 [/cmd] Commands" }), _jsx(Text, { color: tuiColors.textQuaternary, children: " \u2502 [?] Help" })] })] }));
20
- });
21
- //# sourceMappingURL=InputBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InputBar.js","sourceRoot":"","sources":["../../../src/tui/components/InputBar.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- interface LogsPanelProps {
3
- logs: string[];
4
- isActive: boolean;
5
- isStreaming?: boolean;
6
- }
7
- export declare const LogsPanel: React.NamedExoticComponent<LogsPanelProps>;
8
- export {};
9
- //# sourceMappingURL=LogsPanel.d.ts.map
@@ -1,21 +0,0 @@
1
- import React from "react";
2
- interface MemoryNode {
3
- id: string;
4
- type: string;
5
- label: string;
6
- }
7
- interface MemoryEdge {
8
- from: string;
9
- to: string;
10
- }
11
- interface MemoryPanelProps {
12
- nodes?: MemoryNode[];
13
- edges?: MemoryEdge[];
14
- nodeCount?: number;
15
- cacheHitRate?: number;
16
- isActive?: boolean;
17
- tick?: number;
18
- }
19
- export declare const MemoryPanel: React.NamedExoticComponent<MemoryPanelProps>;
20
- export {};
21
- //# sourceMappingURL=MemoryPanel.d.ts.map
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- interface MetricsData {
3
- sessions: number;
4
- avgDuration: number;
5
- successRate: number;
6
- totalCost: number;
7
- totalRetries?: number;
8
- totalEscalations?: number;
9
- }
10
- interface MetricsPanelProps {
11
- metrics: MetricsData;
12
- fitness: number;
13
- isActive: boolean;
14
- tick?: number;
15
- }
16
- export declare const MetricsPanel: React.NamedExoticComponent<MetricsPanelProps>;
17
- export {};
18
- //# sourceMappingURL=MetricsPanel.d.ts.map
@@ -1,23 +0,0 @@
1
- import React from "react";
2
- interface Agent {
3
- name: string;
4
- role: string;
5
- status: "idle" | "running" | "queued" | "done";
6
- provider: string;
7
- }
8
- interface Provider {
9
- name: string;
10
- status: "active" | "idle";
11
- latency: number;
12
- }
13
- interface StatusPanelProps {
14
- agents: Agent[];
15
- providers: Provider[];
16
- fitness: number;
17
- currentWorkflow: string | null;
18
- isActive: boolean;
19
- tick?: number;
20
- }
21
- export declare const StatusPanel: React.NamedExoticComponent<StatusPanelProps>;
22
- export {};
23
- //# sourceMappingURL=StatusPanel.d.ts.map
@@ -1,28 +0,0 @@
1
- import React from "react";
2
- import { AgentState } from "./AgentStateIcon.js";
3
- export interface TaskNode {
4
- id: string;
5
- name: string;
6
- state: AgentState;
7
- level: number;
8
- detail?: string;
9
- children?: TaskNode[];
10
- executionTime?: number;
11
- subtasks?: string[];
12
- }
13
- export interface TaskTreeProps {
14
- rootTask: string;
15
- tasks: TaskNode[];
16
- tick: number;
17
- isActive?: boolean;
18
- maxDisplay?: number;
19
- }
20
- export declare const TaskTree: React.NamedExoticComponent<TaskTreeProps>;
21
- interface TaskHierarchyProps {
22
- tasks: TaskNode[];
23
- tick: number;
24
- expandedIds?: Set<string>;
25
- }
26
- export declare const TaskHierarchy: React.NamedExoticComponent<TaskHierarchyProps>;
27
- export {};
28
- //# sourceMappingURL=TaskTree.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskTree.d.ts","sourceRoot":"","sources":["../../../src/tui/components/TaskTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAG7C,OAAO,EAAkB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjE,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAiDD,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,QAAQ,2CA4CnB,CAAC;AAEH,UAAU,kBAAkB;IAC1B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,gDAkCxB,CAAC"}
@@ -1,29 +0,0 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
- import { memo, useMemo } from "react";
3
- import { Box, Text } from "ink";
4
- import { tuiColors, treeChars } from "../styles/index.js";
5
- import { AgentStateIcon } from "./AgentStateIcon.js";
6
- import { AnimatedBranch } from "./AnimatedBranch.js";
7
- const TaskNodeItem = memo(function TaskNodeItem({ node, tick, isLast, showDetail = true }) {
8
- const indent = useMemo(() => " ".repeat(node.level), [node.level]);
9
- const prefix = isLast ? treeChars.lastBranch : treeChars.branch;
10
- const timeStr = node.executionTime ? `${node.executionTime.toFixed(1)}s` : "";
11
- const paddedName = useMemo(() => node.name.padEnd(20), [node.name]);
12
- return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: tuiColors.textTertiary, children: [indent, prefix, " "] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: tuiColors.textSecondary, children: "[" }), _jsx(AgentStateIcon, { state: node.state, tick: tick }), _jsx(Text, { color: tuiColors.textSecondary, children: "]" })] }), _jsxs(Text, { color: tuiColors.textPrimary, children: [" ", paddedName] }), timeStr && (_jsxs(Text, { color: tuiColors.textTertiary, children: [" \u25CF ", timeStr] }))] }), showDetail && node.detail && (_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: tuiColors.textTertiary, children: [indent, " \u2514\u2500\u2500 "] }), _jsx(Text, { color: tuiColors.textSecondary, children: node.detail })] })), showDetail && node.subtasks && node.subtasks.length > 0 && (_jsx(Box, { flexDirection: "column", children: node.subtasks.map((subtask, idx) => (_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: tuiColors.textTertiary, children: [indent, " ", idx === node.subtasks.length - 1 ? '└──' : '├──', " "] }), _jsx(Text, { color: tuiColors.textTertiary, children: subtask })] }, idx))) }))] }));
13
- });
14
- export const TaskTree = memo(function TaskTree({ rootTask, tasks, tick, isActive = false, maxDisplay = 15 }) {
15
- const borderColor = isActive ? tuiColors.primary : tuiColors.border;
16
- const displayTasks = useMemo(() => tasks.slice(0, maxDisplay), [tasks, maxDisplay]);
17
- const hiddenCount = tasks.length - maxDisplay;
18
- const taskElements = useMemo(() => displayTasks.map((task, idx) => (_jsx(TaskNodeItem, { node: task, tick: tick, isLast: idx === displayTasks.length - 1 && hiddenCount === 0 }, task.id))), [displayTasks, tick, hiddenCount]);
19
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: borderColor, paddingX: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: tuiColors.primary, bold: true, children: "\u250C\u2500" }), _jsx(Text, { color: tuiColors.primary, bold: true, children: " TASK_TREE " }), _jsx(Text, { color: tuiColors.textTertiary, children: "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500" })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: tuiColors.textPrimary, bold: true, children: "\u25A0 " }), _jsxs(Text, { color: tuiColors.textSecondary, children: ["root: ", rootTask] })] }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: _jsx(AnimatedBranch, { type: "vertical", tick: tick, animated: isActive }) }), _jsxs(Box, { flexDirection: "column", children: [taskElements, hiddenCount > 0 && (_jsx(Box, { flexDirection: "row", children: _jsxs(Text, { color: tuiColors.textTertiary, children: [" \u2514\u2500\u2500 +", hiddenCount, " more tasks..."] }) }))] })] }));
20
- });
21
- export const TaskHierarchy = memo(function TaskHierarchy({ tasks, tick, expandedIds = new Set() }) {
22
- const renderNode = (node, isLast) => {
23
- const hasChildren = (node.children?.length ?? 0) > 0;
24
- const isExpanded = expandedIds.has(node.id);
25
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(TaskNodeItem, { node: node, tick: tick, isLast: isLast, showDetail: isExpanded }), hasChildren && isExpanded && (_jsx(Box, { flexDirection: "column", marginLeft: 2, children: node.children.map((child, idx) => (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { flexDirection: "row", children: _jsx(AnimatedBranch, { type: "vertical", tick: tick }) }), renderNode(child, idx === node.children.length - 1)] }, child.id))) }))] }, node.id));
26
- };
27
- return (_jsx(Box, { flexDirection: "column", children: tasks.map((task, idx) => renderNode(task, idx === tasks.length - 1)) }));
28
- });
29
- //# sourceMappingURL=TaskTree.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskTree.js","sourceRoot":"","sources":["../../../src/tui/components/TaskTree.tsx"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- import React from "react";
2
- interface ProgressBarProps {
3
- progress: number;
4
- width?: number;
5
- showPercentage?: boolean;
6
- animated?: boolean;
7
- tick?: number;
8
- showMarker?: boolean;
9
- glowEffect?: boolean;
10
- color?: string;
11
- }
12
- export declare const AnimatedProgressBar: React.NamedExoticComponent<ProgressBarProps>;
13
- interface ProgressWithLabelProps {
14
- label: string;
15
- progress: number;
16
- width?: number;
17
- tick?: number;
18
- animated?: boolean;
19
- }
20
- export declare const ProgressWithLabel: React.NamedExoticComponent<ProgressWithLabelProps>;
21
- interface SegmentedProgressProps {
22
- segments: {
23
- progress: number;
24
- color?: string;
25
- label?: string;
26
- }[];
27
- width?: number;
28
- tick?: number;
29
- }
30
- export declare const SegmentedProgress: React.NamedExoticComponent<SegmentedProgressProps>;
31
- interface WorkflowProgressProps {
32
- level: string;
33
- progress: number;
34
- isActive: boolean;
35
- tick?: number;
36
- }
37
- export declare const WorkflowProgress: React.NamedExoticComponent<WorkflowProgressProps>;
38
- export {};
39
- //# sourceMappingURL=ProgressBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../../../src/tui/components/animations/ProgressBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAI7C,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,mBAAmB,8CAoD9B,CAAC;AAEH,UAAU,sBAAsB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,oDAe5B,CAAC;AAEH,UAAU,sBAAsB;IAC9B,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,iBAAiB,oDA2B5B,CAAC;AAEH,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,gBAAgB,mDAuB3B,CAAC"}
@@ -1,39 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { memo, useMemo } from "react";
3
- import { Box, Text } from "ink";
4
- import { tuiColors, getProgressMarker, getProgressGlow } from "../../styles/index.js";
5
- export const AnimatedProgressBar = memo(function AnimatedProgressBar({ progress, width = 16, showPercentage = true, animated = true, tick = 0, showMarker = true, glowEffect = false, color, }) {
6
- const filled = Math.round((progress / 100) * width);
7
- const empty = width - filled;
8
- const markerPos = Math.min(filled, width - 1);
9
- const barColor = color || (progress >= 100
10
- ? tuiColors.success
11
- : progress > 0
12
- ? tuiColors.warning
13
- : tuiColors.textTertiary);
14
- const filledChar = glowEffect && animated ? getProgressGlow(tick) : "█";
15
- const emptyChar = "░";
16
- const markerChar = showMarker && animated && progress > 0 && progress < 100 ? getProgressMarker(tick) : "";
17
- const beforeMarker = filled > 0 ? filledChar.repeat(Math.max(0, filled - 1)) : "";
18
- const afterMarker = emptyChar.repeat(empty);
19
- const progressStr = useMemo(() => progress.toString().padStart(3), [progress]);
20
- if (showMarker && animated && progress > 0 && progress < 100) {
21
- return (_jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: barColor, children: beforeMarker }), _jsx(Text, { color: tuiColors.primary, bold: true, children: markerChar }), _jsx(Text, { color: tuiColors.textTertiary, children: afterMarker.slice(1) }), showPercentage && (_jsxs(Text, { color: barColor, children: [" ", progressStr, "%"] }))] }));
22
- }
23
- const bar = filledChar.repeat(filled) + emptyChar.repeat(empty);
24
- return (_jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: barColor, children: bar }), showPercentage && (_jsxs(Text, { color: barColor, children: [" ", progressStr, "%"] }))] }));
25
- });
26
- export const ProgressWithLabel = memo(function ProgressWithLabel({ label, progress, width = 12, tick = 0, animated = true }) {
27
- const paddedLabel = useMemo(() => label.padEnd(10), [label]);
28
- return (_jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: tuiColors.textSecondary, children: paddedLabel }), _jsx(AnimatedProgressBar, { progress: progress, width: width, tick: tick, animated: animated, showMarker: true })] }));
29
- });
30
- export const SegmentedProgress = memo(function SegmentedProgress({ segments, width = 20, tick = 0 }) {
31
- const totalProgress = useMemo(() => segments.reduce((sum, s) => sum + s.progress, 0) / segments.length, [segments]);
32
- return (_jsx(Box, { flexDirection: "column", children: segments.map((segment, idx) => (_jsxs(Box, { flexDirection: "row", children: [segment.label && _jsx(Text, { color: tuiColors.textTertiary, children: segment.label.padEnd(8) }), _jsx(AnimatedProgressBar, { progress: segment.progress, width: width, tick: tick, color: segment.color, showPercentage: false }), _jsxs(Text, { color: segment.color || tuiColors.textPrimary, children: [" ", segment.progress, "%"] })] }, idx))) }));
33
- });
34
- export const WorkflowProgress = memo(function WorkflowProgress({ level, progress, isActive, tick = 0 }) {
35
- const levelColor = isActive ? tuiColors.primary : tuiColors.textSecondary;
36
- const paddedLevel = useMemo(() => level.padEnd(12), [level]);
37
- return (_jsxs(Box, { flexDirection: "row", children: [_jsx(Text, { color: levelColor, bold: true, children: paddedLevel }), _jsx(AnimatedProgressBar, { progress: progress, width: 12, tick: tick, animated: isActive, showMarker: isActive, glowEffect: isActive, color: isActive ? tuiColors.warning : undefined })] }));
38
- });
39
- //# sourceMappingURL=ProgressBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../../../src/tui/components/animations/ProgressBar.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import React from "react";
2
- interface PulseProps {
3
- interval?: number;
4
- color?: string;
5
- isAnimating?: boolean;
6
- type?: "pulse" | "breath" | "ping";
7
- }
8
- export declare const Pulse: React.NamedExoticComponent<PulseProps>;
9
- export declare function usePulseFrame(tick: number, type?: "pulse" | "breath" | "ping"): string;
10
- export declare function usePulseIntensity(tick: number, interval?: number): number;
11
- interface StatusPulseProps {
12
- status: "online" | "offline" | "running" | "error";
13
- tick?: number;
14
- }
15
- export declare const StatusPulse: React.NamedExoticComponent<StatusPulseProps>;
16
- export {};
17
- //# sourceMappingURL=Pulse.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Pulse.d.ts","sourceRoot":"","sources":["../../../../src/tui/components/animations/Pulse.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAqBpC,UAAU,UAAU;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,KAAK,wCAYhB,CAAC;AAEH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,OAAO,GAAG,QAAQ,GAAG,MAAgB,GAAG,MAAM,CAG/F;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAI9E;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,WAAW,8CActB,CAAC"}
@@ -1,47 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { memo } from "react";
3
- import { Text } from "ink";
4
- import { useAnimation } from "../../hooks/useAnimation.js";
5
- import { tuiColors } from "../../styles/index.js";
6
- const PULSE_FRAMES = ["●", "◐", "○", "◐"];
7
- const BREATH_FRAMES = ["●", "●", "◐", "◐", "○", "○", "◐", "◐"];
8
- const PING_FRAMES = ["●", "●", "●", "○", "○", "○", "○", "○", "○", "○"];
9
- const FRAME_MAP = {
10
- pulse: PULSE_FRAMES,
11
- breath: BREATH_FRAMES,
12
- ping: PING_FRAMES,
13
- };
14
- const DEFAULT_INTERVALS = {
15
- pulse: 300,
16
- breath: 600,
17
- ping: 400,
18
- };
19
- export const Pulse = memo(function Pulse({ interval, color = tuiColors.success, isAnimating = true, type = "pulse" }) {
20
- const frames = FRAME_MAP[type];
21
- const actualInterval = interval ?? DEFAULT_INTERVALS[type];
22
- const { frame } = useAnimation({ interval: actualInterval, loop: true, autoStart: isAnimating, maxFps: 15 });
23
- const currentFrame = frames[frame % frames.length];
24
- return _jsx(Text, { color: color, children: currentFrame });
25
- });
26
- export function usePulseFrame(tick, type = "pulse") {
27
- const frames = FRAME_MAP[type];
28
- return frames[tick % frames.length];
29
- }
30
- export function usePulseIntensity(tick, interval = 100) {
31
- const cycleLength = 20;
32
- const phase = (tick % cycleLength) / cycleLength;
33
- return 0.5 + Math.sin(phase * Math.PI * 2) * 0.5;
34
- }
35
- export const StatusPulse = memo(function StatusPulse({ status, tick }) {
36
- if (status === "running") {
37
- return _jsx(Pulse, { interval: 200, color: tuiColors.warning, type: "pulse" });
38
- }
39
- if (status === "online") {
40
- return _jsx(Pulse, { interval: 600, color: tuiColors.success, type: "breath" });
41
- }
42
- if (status === "error") {
43
- return _jsx(Pulse, { interval: 400, color: tuiColors.error, type: "ping" });
44
- }
45
- return _jsx(Text, { color: tuiColors.textTertiary, children: "\u25CB" });
46
- });
47
- //# sourceMappingURL=Pulse.js.map