4runr-os 2.1.4 → 2.1.6

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 (566) hide show
  1. package/dist/index.js +16 -1
  2. package/dist/index.js.map +1 -1
  3. package/dist/tui_mk1/kernel.d.ts.map +1 -1
  4. package/dist/tui_mk1/kernel.js +107 -4
  5. package/dist/tui_mk1/kernel.js.map +1 -1
  6. package/dist/tui_mk1/layout/layoutEngine.d.ts +38 -19
  7. package/dist/tui_mk1/layout/layoutEngine.d.ts.map +1 -1
  8. package/dist/tui_mk1/layout/layoutEngine.js +521 -228
  9. package/dist/tui_mk1/layout/layoutEngine.js.map +1 -1
  10. package/dist/tui_mk1/log.d.ts +23 -0
  11. package/dist/tui_mk1/log.d.ts.map +1 -0
  12. package/dist/tui_mk1/log.js +125 -0
  13. package/dist/tui_mk1/log.js.map +1 -0
  14. package/dist/tui_mk1/logger.d.ts.map +1 -1
  15. package/dist/tui_mk1/logger.js +20 -10
  16. package/dist/tui_mk1/logger.js.map +1 -1
  17. package/dist/tui_mk1/mk1App.d.ts +13 -18
  18. package/dist/tui_mk1/mk1App.d.ts.map +1 -1
  19. package/dist/tui_mk1/mk1App.js +334 -157
  20. package/dist/tui_mk1/mk1App.js.map +1 -1
  21. package/dist/tui_mk1/resizeController.d.ts.map +1 -1
  22. package/dist/tui_mk1/resizeController.js +15 -1
  23. package/dist/tui_mk1/resizeController.js.map +1 -1
  24. package/dist/tui_mk1/stdoutGuard.d.ts.map +1 -1
  25. package/dist/tui_mk1/stdoutGuard.js +7 -0
  26. package/dist/tui_mk1/stdoutGuard.js.map +1 -1
  27. package/dist/tui_mk1/terminalRestore.d.ts.map +1 -1
  28. package/dist/tui_mk1/terminalRestore.js +19 -1
  29. package/dist/tui_mk1/terminalRestore.js.map +1 -1
  30. package/dist/tui_mk1/ui/offenderScanner.d.ts +31 -0
  31. package/dist/tui_mk1/ui/offenderScanner.d.ts.map +1 -0
  32. package/dist/tui_mk1/ui/offenderScanner.js +80 -0
  33. package/dist/tui_mk1/ui/offenderScanner.js.map +1 -0
  34. package/dist/tui_mk1/ui/safe.d.ts +9 -0
  35. package/dist/tui_mk1/ui/safe.d.ts.map +1 -0
  36. package/dist/tui_mk1/ui/safe.js +29 -0
  37. package/dist/tui_mk1/ui/safe.js.map +1 -0
  38. package/dist/tui_mk1/ui/safeText.d.ts +22 -0
  39. package/dist/tui_mk1/ui/safeText.d.ts.map +1 -0
  40. package/dist/tui_mk1/ui/safeText.js +50 -0
  41. package/dist/tui_mk1/ui/safeText.js.map +1 -0
  42. package/dist/tui_mk1/ui/uiBuilder.d.ts +44 -0
  43. package/dist/tui_mk1/ui/uiBuilder.d.ts.map +1 -0
  44. package/dist/tui_mk1/ui/uiBuilder.js +467 -0
  45. package/dist/tui_mk1/ui/uiBuilder.js.map +1 -0
  46. package/dist/tui_mk1/viewport/safeViewport.d.ts +10 -1
  47. package/dist/tui_mk1/viewport/safeViewport.d.ts.map +1 -1
  48. package/dist/tui_mk1/viewport/safeViewport.js +47 -15
  49. package/dist/tui_mk1/viewport/safeViewport.js.map +1 -1
  50. package/dist/tui_mk2/kernel.d.ts +28 -0
  51. package/dist/tui_mk2/kernel.d.ts.map +1 -0
  52. package/dist/tui_mk2/kernel.js +138 -0
  53. package/dist/tui_mk2/kernel.js.map +1 -0
  54. package/dist/tui_mk2/mk2App.d.ts +33 -0
  55. package/dist/tui_mk2/mk2App.d.ts.map +1 -0
  56. package/dist/tui_mk2/mk2App.js +135 -0
  57. package/dist/tui_mk2/mk2App.js.map +1 -0
  58. package/package.json +8 -7
  59. package/dist/tui_mk1/ui/panels/createSection.d.ts +0 -18
  60. package/dist/tui_mk1/ui/panels/createSection.d.ts.map +0 -1
  61. package/dist/tui_mk1/ui/panels/createSection.js +0 -42
  62. package/dist/tui_mk1/ui/panels/createSection.js.map +0 -1
  63. package/dist/tui_mk1/ui/panels.d.ts +0 -23
  64. package/dist/tui_mk1/ui/panels.d.ts.map +0 -1
  65. package/dist/tui_mk1/ui/panels.js +0 -108
  66. package/dist/tui_mk1/ui/panels.js.map +0 -1
  67. package/dist/tui_mk1/ui/render/sectionRenderer.d.ts +0 -21
  68. package/dist/tui_mk1/ui/render/sectionRenderer.d.ts.map +0 -1
  69. package/dist/tui_mk1/ui/render/sectionRenderer.js +0 -32
  70. package/dist/tui_mk1/ui/render/sectionRenderer.js.map +0 -1
  71. package/dist/tui_mk1/ui/widgetManager.d.ts +0 -58
  72. package/dist/tui_mk1/ui/widgetManager.d.ts.map +0 -1
  73. package/dist/tui_mk1/ui/widgetManager.js +0 -197
  74. package/dist/tui_mk1/ui/widgetManager.js.map +0 -1
  75. package/dist/ui/boot/sequence.d.ts +0 -10
  76. package/dist/ui/boot/sequence.d.ts.map +0 -1
  77. package/dist/ui/boot/sequence.js +0 -171
  78. package/dist/ui/boot/sequence.js.map +0 -1
  79. package/dist/ui/constraints/layoutSpec.d.ts +0 -47
  80. package/dist/ui/constraints/layoutSpec.d.ts.map +0 -1
  81. package/dist/ui/constraints/layoutSpec.js +0 -60
  82. package/dist/ui/constraints/layoutSpec.js.map +0 -1
  83. package/dist/ui/constraints/unknownHandling.d.ts +0 -29
  84. package/dist/ui/constraints/unknownHandling.d.ts.map +0 -1
  85. package/dist/ui/constraints/unknownHandling.js +0 -60
  86. package/dist/ui/constraints/unknownHandling.js.map +0 -1
  87. package/dist/ui/drilldowns/feed.d.ts +0 -11
  88. package/dist/ui/drilldowns/feed.d.ts.map +0 -1
  89. package/dist/ui/drilldowns/feed.js +0 -68
  90. package/dist/ui/drilldowns/feed.js.map +0 -1
  91. package/dist/ui/drilldowns/index.d.ts +0 -7
  92. package/dist/ui/drilldowns/index.d.ts.map +0 -1
  93. package/dist/ui/drilldowns/index.js +0 -8
  94. package/dist/ui/drilldowns/index.js.map +0 -1
  95. package/dist/ui/drilldowns/posture.d.ts +0 -11
  96. package/dist/ui/drilldowns/posture.d.ts.map +0 -1
  97. package/dist/ui/drilldowns/posture.js +0 -74
  98. package/dist/ui/drilldowns/posture.js.map +0 -1
  99. package/dist/ui/intelligence-posture-view.d.ts +0 -22
  100. package/dist/ui/intelligence-posture-view.d.ts.map +0 -1
  101. package/dist/ui/intelligence-posture-view.js +0 -169
  102. package/dist/ui/intelligence-posture-view.js.map +0 -1
  103. package/dist/ui/navigation/keymaps.d.ts +0 -26
  104. package/dist/ui/navigation/keymaps.d.ts.map +0 -1
  105. package/dist/ui/navigation/keymaps.js +0 -135
  106. package/dist/ui/navigation/keymaps.js.map +0 -1
  107. package/dist/ui/navigation/palette.d.ts +0 -10
  108. package/dist/ui/navigation/palette.d.ts.map +0 -1
  109. package/dist/ui/navigation/palette.js +0 -133
  110. package/dist/ui/navigation/palette.js.map +0 -1
  111. package/dist/ui/navigation/state.d.ts +0 -47
  112. package/dist/ui/navigation/state.d.ts.map +0 -1
  113. package/dist/ui/navigation/state.js +0 -84
  114. package/dist/ui/navigation/state.js.map +0 -1
  115. package/dist/ui/navigation/types.d.ts +0 -38
  116. package/dist/ui/navigation/types.d.ts.map +0 -1
  117. package/dist/ui/navigation/types.js +0 -36
  118. package/dist/ui/navigation/types.js.map +0 -1
  119. package/dist/ui/panels/active-assets.d.ts +0 -12
  120. package/dist/ui/panels/active-assets.d.ts.map +0 -1
  121. package/dist/ui/panels/active-assets.js +0 -83
  122. package/dist/ui/panels/active-assets.js.map +0 -1
  123. package/dist/ui/panels/capability-flags.d.ts +0 -12
  124. package/dist/ui/panels/capability-flags.d.ts.map +0 -1
  125. package/dist/ui/panels/capability-flags.js +0 -59
  126. package/dist/ui/panels/capability-flags.js.map +0 -1
  127. package/dist/ui/panels/command-surface.d.ts +0 -12
  128. package/dist/ui/panels/command-surface.d.ts.map +0 -1
  129. package/dist/ui/panels/command-surface.js +0 -55
  130. package/dist/ui/panels/command-surface.js.map +0 -1
  131. package/dist/ui/panels/network-origin.d.ts +0 -12
  132. package/dist/ui/panels/network-origin.d.ts.map +0 -1
  133. package/dist/ui/panels/network-origin.js +0 -79
  134. package/dist/ui/panels/network-origin.js.map +0 -1
  135. package/dist/ui/panels/operations-feed.d.ts +0 -12
  136. package/dist/ui/panels/operations-feed.d.ts.map +0 -1
  137. package/dist/ui/panels/operations-feed.js +0 -90
  138. package/dist/ui/panels/operations-feed.js.map +0 -1
  139. package/dist/ui/panels/posture.d.ts +0 -12
  140. package/dist/ui/panels/posture.d.ts.map +0 -1
  141. package/dist/ui/panels/posture.js +0 -84
  142. package/dist/ui/panels/posture.js.map +0 -1
  143. package/dist/ui/panels/resources.d.ts +0 -11
  144. package/dist/ui/panels/resources.d.ts.map +0 -1
  145. package/dist/ui/panels/resources.js +0 -88
  146. package/dist/ui/panels/resources.js.map +0 -1
  147. package/dist/ui/primitives/Panel.d.ts +0 -25
  148. package/dist/ui/primitives/Panel.d.ts.map +0 -1
  149. package/dist/ui/primitives/Panel.js +0 -59
  150. package/dist/ui/primitives/Panel.js.map +0 -1
  151. package/dist/ui/rendering/metricRenderer.d.ts +0 -24
  152. package/dist/ui/rendering/metricRenderer.d.ts.map +0 -1
  153. package/dist/ui/rendering/metricRenderer.js +0 -86
  154. package/dist/ui/rendering/metricRenderer.js.map +0 -1
  155. package/dist/ui/runtime/hub.d.ts +0 -12
  156. package/dist/ui/runtime/hub.d.ts.map +0 -1
  157. package/dist/ui/runtime/hub.js +0 -486
  158. package/dist/ui/runtime/hub.js.map +0 -1
  159. package/dist/ui/runtime/hubValidation.d.ts +0 -23
  160. package/dist/ui/runtime/hubValidation.d.ts.map +0 -1
  161. package/dist/ui/runtime/hubValidation.js +0 -90
  162. package/dist/ui/runtime/hubValidation.js.map +0 -1
  163. package/dist/ui/runtime/index.d.ts +0 -29
  164. package/dist/ui/runtime/index.d.ts.map +0 -1
  165. package/dist/ui/runtime/index.js +0 -297
  166. package/dist/ui/runtime/index.js.map +0 -1
  167. package/dist/ui/runtime/no-tui.d.ts +0 -12
  168. package/dist/ui/runtime/no-tui.d.ts.map +0 -1
  169. package/dist/ui/runtime/no-tui.js +0 -77
  170. package/dist/ui/runtime/no-tui.js.map +0 -1
  171. package/dist/ui/runtime/state-builder.d.ts +0 -13
  172. package/dist/ui/runtime/state-builder.d.ts.map +0 -1
  173. package/dist/ui/runtime/state-builder.js +0 -114
  174. package/dist/ui/runtime/state-builder.js.map +0 -1
  175. package/dist/ui/runtime/terminalSizeCheck.d.ts +0 -10
  176. package/dist/ui/runtime/terminalSizeCheck.d.ts.map +0 -1
  177. package/dist/ui/runtime/terminalSizeCheck.js +0 -51
  178. package/dist/ui/runtime/terminalSizeCheck.js.map +0 -1
  179. package/dist/ui/runtime/tuiLogGate.d.ts +0 -22
  180. package/dist/ui/runtime/tuiLogGate.d.ts.map +0 -1
  181. package/dist/ui/runtime/tuiLogGate.js +0 -68
  182. package/dist/ui/runtime/tuiLogGate.js.map +0 -1
  183. package/dist/ui/state/types.d.ts +0 -72
  184. package/dist/ui/state/types.d.ts.map +0 -1
  185. package/dist/ui/state/types.js +0 -6
  186. package/dist/ui/state/types.js.map +0 -1
  187. package/dist/ui/theme/borders.d.ts +0 -20
  188. package/dist/ui/theme/borders.d.ts.map +0 -1
  189. package/dist/ui/theme/borders.js +0 -55
  190. package/dist/ui/theme/borders.js.map +0 -1
  191. package/dist/ui/theme/tokens.d.ts +0 -28
  192. package/dist/ui/theme/tokens.d.ts.map +0 -1
  193. package/dist/ui/theme/tokens.js +0 -50
  194. package/dist/ui/theme/tokens.js.map +0 -1
  195. package/dist/ui/theme/typography.d.ts +0 -14
  196. package/dist/ui/theme/typography.d.ts.map +0 -1
  197. package/dist/ui/theme/typography.js +0 -30
  198. package/dist/ui/theme/typography.js.map +0 -1
  199. package/dist/ui/v3/collectors/assets.collector.d.ts +0 -20
  200. package/dist/ui/v3/collectors/assets.collector.d.ts.map +0 -1
  201. package/dist/ui/v3/collectors/assets.collector.js +0 -80
  202. package/dist/ui/v3/collectors/assets.collector.js.map +0 -1
  203. package/dist/ui/v3/collectors/capabilities.collector.d.ts +0 -18
  204. package/dist/ui/v3/collectors/capabilities.collector.d.ts.map +0 -1
  205. package/dist/ui/v3/collectors/capabilities.collector.js +0 -113
  206. package/dist/ui/v3/collectors/capabilities.collector.js.map +0 -1
  207. package/dist/ui/v3/collectors/network.collector.d.ts +0 -18
  208. package/dist/ui/v3/collectors/network.collector.d.ts.map +0 -1
  209. package/dist/ui/v3/collectors/network.collector.js +0 -37
  210. package/dist/ui/v3/collectors/network.collector.js.map +0 -1
  211. package/dist/ui/v3/collectors/posture.derive.d.ts +0 -24
  212. package/dist/ui/v3/collectors/posture.derive.d.ts.map +0 -1
  213. package/dist/ui/v3/collectors/posture.derive.js +0 -57
  214. package/dist/ui/v3/collectors/posture.derive.js.map +0 -1
  215. package/dist/ui/v3/collectors/resources.d.ts +0 -23
  216. package/dist/ui/v3/collectors/resources.d.ts.map +0 -1
  217. package/dist/ui/v3/collectors/resources.js +0 -136
  218. package/dist/ui/v3/collectors/resources.js.map +0 -1
  219. package/dist/ui/v3/commands/commandEngine.d.ts +0 -77
  220. package/dist/ui/v3/commands/commandEngine.d.ts.map +0 -1
  221. package/dist/ui/v3/commands/commandEngine.js +0 -3289
  222. package/dist/ui/v3/commands/commandEngine.js.map +0 -1
  223. package/dist/ui/v3/commands/commandResult.d.ts +0 -25
  224. package/dist/ui/v3/commands/commandResult.d.ts.map +0 -1
  225. package/dist/ui/v3/commands/commandResult.js +0 -19
  226. package/dist/ui/v3/commands/commandResult.js.map +0 -1
  227. package/dist/ui/v3/commands/diagnose.d.ts +0 -17
  228. package/dist/ui/v3/commands/diagnose.d.ts.map +0 -1
  229. package/dist/ui/v3/commands/diagnose.js +0 -62
  230. package/dist/ui/v3/commands/diagnose.js.map +0 -1
  231. package/dist/ui/v3/commands/errorClassifier.d.ts +0 -23
  232. package/dist/ui/v3/commands/errorClassifier.d.ts.map +0 -1
  233. package/dist/ui/v3/commands/errorClassifier.js +0 -63
  234. package/dist/ui/v3/commands/errorClassifier.js.map +0 -1
  235. package/dist/ui/v3/commands/parser.d.ts +0 -14
  236. package/dist/ui/v3/commands/parser.d.ts.map +0 -1
  237. package/dist/ui/v3/commands/parser.js +0 -29
  238. package/dist/ui/v3/commands/parser.js.map +0 -1
  239. package/dist/ui/v3/commands/router.d.ts +0 -13
  240. package/dist/ui/v3/commands/router.d.ts.map +0 -1
  241. package/dist/ui/v3/commands/router.js +0 -150
  242. package/dist/ui/v3/commands/router.js.map +0 -1
  243. package/dist/ui/v3/config/gateway.d.ts +0 -40
  244. package/dist/ui/v3/config/gateway.d.ts.map +0 -1
  245. package/dist/ui/v3/config/gateway.js +0 -113
  246. package/dist/ui/v3/config/gateway.js.map +0 -1
  247. package/dist/ui/v3/core/event.d.ts +0 -19
  248. package/dist/ui/v3/core/event.d.ts.map +0 -1
  249. package/dist/ui/v3/core/event.js +0 -7
  250. package/dist/ui/v3/core/event.js.map +0 -1
  251. package/dist/ui/v3/core/eventBus.d.ts +0 -39
  252. package/dist/ui/v3/core/eventBus.d.ts.map +0 -1
  253. package/dist/ui/v3/core/eventBus.js +0 -79
  254. package/dist/ui/v3/core/eventBus.js.map +0 -1
  255. package/dist/ui/v3/core/feedStore.d.ts +0 -34
  256. package/dist/ui/v3/core/feedStore.d.ts.map +0 -1
  257. package/dist/ui/v3/core/feedStore.js +0 -46
  258. package/dist/ui/v3/core/feedStore.js.map +0 -1
  259. package/dist/ui/v3/core/logger.d.ts +0 -40
  260. package/dist/ui/v3/core/logger.d.ts.map +0 -1
  261. package/dist/ui/v3/core/logger.js +0 -191
  262. package/dist/ui/v3/core/logger.js.map +0 -1
  263. package/dist/ui/v3/core/opEvent.d.ts +0 -15
  264. package/dist/ui/v3/core/opEvent.d.ts.map +0 -1
  265. package/dist/ui/v3/core/opEvent.js +0 -7
  266. package/dist/ui/v3/core/opEvent.js.map +0 -1
  267. package/dist/ui/v3/index.d.ts +0 -8
  268. package/dist/ui/v3/index.d.ts.map +0 -1
  269. package/dist/ui/v3/index.js +0 -51
  270. package/dist/ui/v3/index.js.map +0 -1
  271. package/dist/ui/v3/runtime/moduleConfig.d.ts +0 -21
  272. package/dist/ui/v3/runtime/moduleConfig.d.ts.map +0 -1
  273. package/dist/ui/v3/runtime/moduleConfig.js +0 -41
  274. package/dist/ui/v3/runtime/moduleConfig.js.map +0 -1
  275. package/dist/ui/v3/section0/index.d.ts +0 -22
  276. package/dist/ui/v3/section0/index.d.ts.map +0 -1
  277. package/dist/ui/v3/section0/index.js +0 -88
  278. package/dist/ui/v3/section0/index.js.map +0 -1
  279. package/dist/ui/v3/section0/runtime/createScreen.d.ts +0 -27
  280. package/dist/ui/v3/section0/runtime/createScreen.d.ts.map +0 -1
  281. package/dist/ui/v3/section0/runtime/createScreen.js +0 -55
  282. package/dist/ui/v3/section0/runtime/createScreen.js.map +0 -1
  283. package/dist/ui/v3/section0/runtime/lifecycle.d.ts +0 -53
  284. package/dist/ui/v3/section0/runtime/lifecycle.d.ts.map +0 -1
  285. package/dist/ui/v3/section0/runtime/lifecycle.js +0 -172
  286. package/dist/ui/v3/section0/runtime/lifecycle.js.map +0 -1
  287. package/dist/ui/v3/section1/index.d.ts +0 -19
  288. package/dist/ui/v3/section1/index.d.ts.map +0 -1
  289. package/dist/ui/v3/section1/index.js +0 -413
  290. package/dist/ui/v3/section1/index.js.map +0 -1
  291. package/dist/ui/v3/section1/runtime/commandLine.d.ts +0 -49
  292. package/dist/ui/v3/section1/runtime/commandLine.d.ts.map +0 -1
  293. package/dist/ui/v3/section1/runtime/commandLine.js +0 -183
  294. package/dist/ui/v3/section1/runtime/commandLine.js.map +0 -1
  295. package/dist/ui/v3/section1/runtime/focusLock.d.ts +0 -24
  296. package/dist/ui/v3/section1/runtime/focusLock.d.ts.map +0 -1
  297. package/dist/ui/v3/section1/runtime/focusLock.js +0 -44
  298. package/dist/ui/v3/section1/runtime/focusLock.js.map +0 -1
  299. package/dist/ui/v3/state/assertUiState.d.ts +0 -27
  300. package/dist/ui/v3/state/assertUiState.d.ts.map +0 -1
  301. package/dist/ui/v3/state/assertUiState.js +0 -89
  302. package/dist/ui/v3/state/assertUiState.js.map +0 -1
  303. package/dist/ui/v3/state/capabilitiesStore.d.ts +0 -54
  304. package/dist/ui/v3/state/capabilitiesStore.d.ts.map +0 -1
  305. package/dist/ui/v3/state/capabilitiesStore.js +0 -76
  306. package/dist/ui/v3/state/capabilitiesStore.js.map +0 -1
  307. package/dist/ui/v3/state/defaultState.d.ts +0 -19
  308. package/dist/ui/v3/state/defaultState.d.ts.map +0 -1
  309. package/dist/ui/v3/state/defaultState.js +0 -28
  310. package/dist/ui/v3/state/defaultState.js.map +0 -1
  311. package/dist/ui/v3/state/gatewayConnectionStore.d.ts +0 -72
  312. package/dist/ui/v3/state/gatewayConnectionStore.d.ts.map +0 -1
  313. package/dist/ui/v3/state/gatewayConnectionStore.js +0 -108
  314. package/dist/ui/v3/state/gatewayConnectionStore.js.map +0 -1
  315. package/dist/ui/v3/state/initializePostureState.d.ts +0 -23
  316. package/dist/ui/v3/state/initializePostureState.d.ts.map +0 -1
  317. package/dist/ui/v3/state/initializePostureState.js +0 -41
  318. package/dist/ui/v3/state/initializePostureState.js.map +0 -1
  319. package/dist/ui/v3/state/panelStore.d.ts +0 -80
  320. package/dist/ui/v3/state/panelStore.d.ts.map +0 -1
  321. package/dist/ui/v3/state/panelStore.js +0 -131
  322. package/dist/ui/v3/state/panelStore.js.map +0 -1
  323. package/dist/ui/v3/state/resourcesData.d.ts +0 -15
  324. package/dist/ui/v3/state/resourcesData.d.ts.map +0 -1
  325. package/dist/ui/v3/state/resourcesData.js +0 -7
  326. package/dist/ui/v3/state/resourcesData.js.map +0 -1
  327. package/dist/ui/v3/state/uiState.d.ts +0 -22
  328. package/dist/ui/v3/state/uiState.d.ts.map +0 -1
  329. package/dist/ui/v3/state/uiState.js +0 -13
  330. package/dist/ui/v3/state/uiState.js.map +0 -1
  331. package/dist/ui/v3/state/uiStateBuilder.d.ts +0 -32
  332. package/dist/ui/v3/state/uiStateBuilder.d.ts.map +0 -1
  333. package/dist/ui/v3/state/uiStateBuilder.js +0 -73
  334. package/dist/ui/v3/state/uiStateBuilder.js.map +0 -1
  335. package/dist/ui/v3/state/uiStateTypes.d.ts +0 -59
  336. package/dist/ui/v3/state/uiStateTypes.d.ts.map +0 -1
  337. package/dist/ui/v3/state/uiStateTypes.js +0 -8
  338. package/dist/ui/v3/state/uiStateTypes.js.map +0 -1
  339. package/dist/ui/v3/state/value.d.ts +0 -80
  340. package/dist/ui/v3/state/value.d.ts.map +0 -1
  341. package/dist/ui/v3/state/value.js +0 -96
  342. package/dist/ui/v3/state/value.js.map +0 -1
  343. package/dist/ui/v3/tui/geometry.d.ts +0 -83
  344. package/dist/ui/v3/tui/geometry.d.ts.map +0 -1
  345. package/dist/ui/v3/tui/geometry.js +0 -201
  346. package/dist/ui/v3/tui/geometry.js.map +0 -1
  347. package/dist/ui/v3/tui/startTui.d.ts +0 -37
  348. package/dist/ui/v3/tui/startTui.d.ts.map +0 -1
  349. package/dist/ui/v3/tui/startTui.js +0 -61
  350. package/dist/ui/v3/tui/startTui.js.map +0 -1
  351. package/dist/ui/v3/tui/terminalMode.d.ts +0 -31
  352. package/dist/ui/v3/tui/terminalMode.d.ts.map +0 -1
  353. package/dist/ui/v3/tui/terminalMode.js +0 -76
  354. package/dist/ui/v3/tui/terminalMode.js.map +0 -1
  355. package/dist/ui/v3/ui/debugUtils.d.ts +0 -67
  356. package/dist/ui/v3/ui/debugUtils.d.ts.map +0 -1
  357. package/dist/ui/v3/ui/debugUtils.js +0 -238
  358. package/dist/ui/v3/ui/debugUtils.js.map +0 -1
  359. package/dist/ui/v3/ui/focus.d.ts +0 -28
  360. package/dist/ui/v3/ui/focus.d.ts.map +0 -1
  361. package/dist/ui/v3/ui/focus.js +0 -38
  362. package/dist/ui/v3/ui/focus.js.map +0 -1
  363. package/dist/ui/v3/ui/layout/hubLayout.d.ts +0 -43
  364. package/dist/ui/v3/ui/layout/hubLayout.d.ts.map +0 -1
  365. package/dist/ui/v3/ui/layout/hubLayout.js +0 -170
  366. package/dist/ui/v3/ui/layout/hubLayout.js.map +0 -1
  367. package/dist/ui/v3/ui/layout/phase1Layout.d.ts +0 -63
  368. package/dist/ui/v3/ui/layout/phase1Layout.d.ts.map +0 -1
  369. package/dist/ui/v3/ui/layout/phase1Layout.js +0 -274
  370. package/dist/ui/v3/ui/layout/phase1Layout.js.map +0 -1
  371. package/dist/ui/v3/ui/layout/phase1Layout.test.d.ts +0 -5
  372. package/dist/ui/v3/ui/layout/phase1Layout.test.d.ts.map +0 -1
  373. package/dist/ui/v3/ui/layout/phase1Layout.test.js +0 -120
  374. package/dist/ui/v3/ui/layout/phase1Layout.test.js.map +0 -1
  375. package/dist/ui/v3/ui/minimalRuntime.d.ts +0 -14
  376. package/dist/ui/v3/ui/minimalRuntime.d.ts.map +0 -1
  377. package/dist/ui/v3/ui/minimalRuntime.js +0 -111
  378. package/dist/ui/v3/ui/minimalRuntime.js.map +0 -1
  379. package/dist/ui/v3/ui/panels/AssetsPanel.d.ts +0 -17
  380. package/dist/ui/v3/ui/panels/AssetsPanel.d.ts.map +0 -1
  381. package/dist/ui/v3/ui/panels/AssetsPanel.js +0 -53
  382. package/dist/ui/v3/ui/panels/AssetsPanel.js.map +0 -1
  383. package/dist/ui/v3/ui/panels/CapabilitiesPanel.d.ts +0 -20
  384. package/dist/ui/v3/ui/panels/CapabilitiesPanel.d.ts.map +0 -1
  385. package/dist/ui/v3/ui/panels/CapabilitiesPanel.js +0 -67
  386. package/dist/ui/v3/ui/panels/CapabilitiesPanel.js.map +0 -1
  387. package/dist/ui/v3/ui/panels/NetworkPanel.d.ts +0 -31
  388. package/dist/ui/v3/ui/panels/NetworkPanel.d.ts.map +0 -1
  389. package/dist/ui/v3/ui/panels/NetworkPanel.js +0 -153
  390. package/dist/ui/v3/ui/panels/NetworkPanel.js.map +0 -1
  391. package/dist/ui/v3/ui/panels/PosturePanel.d.ts +0 -16
  392. package/dist/ui/v3/ui/panels/PosturePanel.d.ts.map +0 -1
  393. package/dist/ui/v3/ui/panels/PosturePanel.js +0 -60
  394. package/dist/ui/v3/ui/panels/PosturePanel.js.map +0 -1
  395. package/dist/ui/v3/ui/panels/ResourcesPanel.d.ts +0 -20
  396. package/dist/ui/v3/ui/panels/ResourcesPanel.d.ts.map +0 -1
  397. package/dist/ui/v3/ui/panels/ResourcesPanel.js +0 -66
  398. package/dist/ui/v3/ui/panels/ResourcesPanel.js.map +0 -1
  399. package/dist/ui/v3/ui/phase1Runtime.d.ts +0 -29
  400. package/dist/ui/v3/ui/phase1Runtime.d.ts.map +0 -1
  401. package/dist/ui/v3/ui/phase1Runtime.js +0 -1648
  402. package/dist/ui/v3/ui/phase1Runtime.js.map +0 -1
  403. package/dist/ui/v3/ui/phase1RuntimeClean.d.ts +0 -34
  404. package/dist/ui/v3/ui/phase1RuntimeClean.d.ts.map +0 -1
  405. package/dist/ui/v3/ui/phase1RuntimeClean.js +0 -1841
  406. package/dist/ui/v3/ui/phase1RuntimeClean.js.map +0 -1
  407. package/dist/ui/v3/ui/primitives/Panel.d.ts +0 -39
  408. package/dist/ui/v3/ui/primitives/Panel.d.ts.map +0 -1
  409. package/dist/ui/v3/ui/primitives/Panel.js +0 -105
  410. package/dist/ui/v3/ui/primitives/Panel.js.map +0 -1
  411. package/dist/ui/v3/ui/theme.d.ts +0 -37
  412. package/dist/ui/v3/ui/theme.d.ts.map +0 -1
  413. package/dist/ui/v3/ui/theme.js +0 -40
  414. package/dist/ui/v3/ui/theme.js.map +0 -1
  415. package/dist/ui/v3/ui/uiRuntime.d.ts +0 -40
  416. package/dist/ui/v3/ui/uiRuntime.d.ts.map +0 -1
  417. package/dist/ui/v3/ui/uiRuntime.js +0 -60
  418. package/dist/ui/v3/ui/uiRuntime.js.map +0 -1
  419. package/dist/ui/v3/ui/widgets/CommandLine.d.ts +0 -26
  420. package/dist/ui/v3/ui/widgets/CommandLine.d.ts.map +0 -1
  421. package/dist/ui/v3/ui/widgets/CommandLine.js +0 -67
  422. package/dist/ui/v3/ui/widgets/CommandLine.js.map +0 -1
  423. package/dist/ui/v3/v1Adapters/agents.d.ts +0 -72
  424. package/dist/ui/v3/v1Adapters/agents.d.ts.map +0 -1
  425. package/dist/ui/v3/v1Adapters/agents.js +0 -182
  426. package/dist/ui/v3/v1Adapters/agents.js.map +0 -1
  427. package/dist/ui/v3/v1Adapters/config.d.ts +0 -67
  428. package/dist/ui/v3/v1Adapters/config.d.ts.map +0 -1
  429. package/dist/ui/v3/v1Adapters/config.js +0 -78
  430. package/dist/ui/v3/v1Adapters/config.js.map +0 -1
  431. package/dist/ui/v3/v1Adapters/connect.d.ts +0 -77
  432. package/dist/ui/v3/v1Adapters/connect.d.ts.map +0 -1
  433. package/dist/ui/v3/v1Adapters/connect.js +0 -576
  434. package/dist/ui/v3/v1Adapters/connect.js.map +0 -1
  435. package/dist/ui/v3/v1Adapters/httpDebug.d.ts +0 -19
  436. package/dist/ui/v3/v1Adapters/httpDebug.d.ts.map +0 -1
  437. package/dist/ui/v3/v1Adapters/httpDebug.js +0 -60
  438. package/dist/ui/v3/v1Adapters/httpDebug.js.map +0 -1
  439. package/dist/ui/v3/v1Adapters/runs.d.ts +0 -77
  440. package/dist/ui/v3/v1Adapters/runs.d.ts.map +0 -1
  441. package/dist/ui/v3/v1Adapters/runs.js +0 -339
  442. package/dist/ui/v3/v1Adapters/runs.js.map +0 -1
  443. package/dist/ui/v4/engine/renderFrame.d.ts +0 -47
  444. package/dist/ui/v4/engine/renderFrame.d.ts.map +0 -1
  445. package/dist/ui/v4/engine/renderFrame.js +0 -653
  446. package/dist/ui/v4/engine/renderFrame.js.map +0 -1
  447. package/dist/ui/v4/engine/resizeController.d.ts +0 -48
  448. package/dist/ui/v4/engine/resizeController.d.ts.map +0 -1
  449. package/dist/ui/v4/engine/resizeController.js +0 -285
  450. package/dist/ui/v4/engine/resizeController.js.map +0 -1
  451. package/dist/ui/v4/engine/safeViewport.d.ts +0 -47
  452. package/dist/ui/v4/engine/safeViewport.d.ts.map +0 -1
  453. package/dist/ui/v4/engine/safeViewport.js +0 -123
  454. package/dist/ui/v4/engine/safeViewport.js.map +0 -1
  455. package/dist/ui/v4/engine/terminalProfile.d.ts +0 -56
  456. package/dist/ui/v4/engine/terminalProfile.d.ts.map +0 -1
  457. package/dist/ui/v4/engine/terminalProfile.js +0 -115
  458. package/dist/ui/v4/engine/terminalProfile.js.map +0 -1
  459. package/dist/ui/v4/index.d.ts +0 -28
  460. package/dist/ui/v4/index.d.ts.map +0 -1
  461. package/dist/ui/v4/index.js +0 -993
  462. package/dist/ui/v4/index.js.map +0 -1
  463. package/dist/ui/v4/layout/layoutEngine.d.ts +0 -62
  464. package/dist/ui/v4/layout/layoutEngine.d.ts.map +0 -1
  465. package/dist/ui/v4/layout/layoutEngine.js +0 -294
  466. package/dist/ui/v4/layout/layoutEngine.js.map +0 -1
  467. package/dist/ui/v4/runtime/keepAlive.d.ts +0 -21
  468. package/dist/ui/v4/runtime/keepAlive.d.ts.map +0 -1
  469. package/dist/ui/v4/runtime/keepAlive.js +0 -149
  470. package/dist/ui/v4/runtime/keepAlive.js.map +0 -1
  471. package/dist/ui/v4/runtime/logger.d.ts +0 -35
  472. package/dist/ui/v4/runtime/logger.d.ts.map +0 -1
  473. package/dist/ui/v4/runtime/logger.js +0 -109
  474. package/dist/ui/v4/runtime/logger.js.map +0 -1
  475. package/dist/ui/v5/debug/assertNoOverflow.d.ts +0 -28
  476. package/dist/ui/v5/debug/assertNoOverflow.d.ts.map +0 -1
  477. package/dist/ui/v5/debug/assertNoOverflow.js +0 -63
  478. package/dist/ui/v5/debug/assertNoOverflow.js.map +0 -1
  479. package/dist/ui/v5/debug/debugCommands.d.ts +0 -20
  480. package/dist/ui/v5/debug/debugCommands.d.ts.map +0 -1
  481. package/dist/ui/v5/debug/debugCommands.js +0 -461
  482. package/dist/ui/v5/debug/debugCommands.js.map +0 -1
  483. package/dist/ui/v5/debugCommands.d.ts +0 -20
  484. package/dist/ui/v5/debugCommands.d.ts.map +0 -1
  485. package/dist/ui/v5/debugCommands.js +0 -81
  486. package/dist/ui/v5/debugCommands.js.map +0 -1
  487. package/dist/ui/v5/guardrails/stdoutGuard.d.ts +0 -23
  488. package/dist/ui/v5/guardrails/stdoutGuard.d.ts.map +0 -1
  489. package/dist/ui/v5/guardrails/stdoutGuard.js +0 -94
  490. package/dist/ui/v5/guardrails/stdoutGuard.js.map +0 -1
  491. package/dist/ui/v5/guardrails/terminalRestore.d.ts +0 -17
  492. package/dist/ui/v5/guardrails/terminalRestore.d.ts.map +0 -1
  493. package/dist/ui/v5/guardrails/terminalRestore.js +0 -47
  494. package/dist/ui/v5/guardrails/terminalRestore.js.map +0 -1
  495. package/dist/ui/v5/index.d.ts +0 -30
  496. package/dist/ui/v5/index.d.ts.map +0 -1
  497. package/dist/ui/v5/index.js +0 -243
  498. package/dist/ui/v5/index.js.map +0 -1
  499. package/dist/ui/v5/kernel/kernel.d.ts +0 -81
  500. package/dist/ui/v5/kernel/kernel.d.ts.map +0 -1
  501. package/dist/ui/v5/kernel/kernel.js +0 -339
  502. package/dist/ui/v5/kernel/kernel.js.map +0 -1
  503. package/dist/ui/v5/kernel.d.ts +0 -75
  504. package/dist/ui/v5/kernel.d.ts.map +0 -1
  505. package/dist/ui/v5/kernel.js +0 -289
  506. package/dist/ui/v5/kernel.js.map +0 -1
  507. package/dist/ui/v5/layout/clampRect.d.ts +0 -28
  508. package/dist/ui/v5/layout/clampRect.d.ts.map +0 -1
  509. package/dist/ui/v5/layout/clampRect.js +0 -45
  510. package/dist/ui/v5/layout/clampRect.js.map +0 -1
  511. package/dist/ui/v5/layout/layoutEngine.d.ts +0 -16
  512. package/dist/ui/v5/layout/layoutEngine.d.ts.map +0 -1
  513. package/dist/ui/v5/layout/layoutEngine.js +0 -99
  514. package/dist/ui/v5/layout/layoutEngine.js.map +0 -1
  515. package/dist/ui/v5/renderGate.d.ts +0 -19
  516. package/dist/ui/v5/renderGate.d.ts.map +0 -1
  517. package/dist/ui/v5/renderGate.js +0 -36
  518. package/dist/ui/v5/renderGate.js.map +0 -1
  519. package/dist/ui/v5/resize/resizeController.d.ts +0 -62
  520. package/dist/ui/v5/resize/resizeController.d.ts.map +0 -1
  521. package/dist/ui/v5/resize/resizeController.js +0 -141
  522. package/dist/ui/v5/resize/resizeController.js.map +0 -1
  523. package/dist/ui/v5/resizeController.d.ts +0 -55
  524. package/dist/ui/v5/resizeController.d.ts.map +0 -1
  525. package/dist/ui/v5/resizeController.js +0 -124
  526. package/dist/ui/v5/resizeController.js.map +0 -1
  527. package/dist/ui/v5/runtime/keepAlive.d.ts +0 -37
  528. package/dist/ui/v5/runtime/keepAlive.d.ts.map +0 -1
  529. package/dist/ui/v5/runtime/keepAlive.js +0 -122
  530. package/dist/ui/v5/runtime/keepAlive.js.map +0 -1
  531. package/dist/ui/v5/runtime/restoreTerminal.d.ts +0 -34
  532. package/dist/ui/v5/runtime/restoreTerminal.d.ts.map +0 -1
  533. package/dist/ui/v5/runtime/restoreTerminal.js +0 -100
  534. package/dist/ui/v5/runtime/restoreTerminal.js.map +0 -1
  535. package/dist/ui/v5/runtime/stdoutGuard.d.ts +0 -42
  536. package/dist/ui/v5/runtime/stdoutGuard.d.ts.map +0 -1
  537. package/dist/ui/v5/runtime/stdoutGuard.js +0 -156
  538. package/dist/ui/v5/runtime/stdoutGuard.js.map +0 -1
  539. package/dist/ui/v5/viewport/getViewport.d.ts +0 -23
  540. package/dist/ui/v5/viewport/getViewport.d.ts.map +0 -1
  541. package/dist/ui/v5/viewport/getViewport.js +0 -117
  542. package/dist/ui/v5/viewport/getViewport.js.map +0 -1
  543. package/dist/ui/v5/viewport.d.ts +0 -41
  544. package/dist/ui/v5/viewport.d.ts.map +0 -1
  545. package/dist/ui/v5/viewport.js +0 -90
  546. package/dist/ui/v5/viewport.js.map +0 -1
  547. package/dist/ui/widgets/flagRow.d.ts +0 -25
  548. package/dist/ui/widgets/flagRow.d.ts.map +0 -1
  549. package/dist/ui/widgets/flagRow.js +0 -57
  550. package/dist/ui/widgets/flagRow.js.map +0 -1
  551. package/dist/ui/widgets/index.d.ts +0 -9
  552. package/dist/ui/widgets/index.d.ts.map +0 -1
  553. package/dist/ui/widgets/index.js +0 -9
  554. package/dist/ui/widgets/index.js.map +0 -1
  555. package/dist/ui/widgets/meter.d.ts +0 -18
  556. package/dist/ui/widgets/meter.d.ts.map +0 -1
  557. package/dist/ui/widgets/meter.js +0 -38
  558. package/dist/ui/widgets/meter.js.map +0 -1
  559. package/dist/ui/widgets/miniMap.d.ts +0 -26
  560. package/dist/ui/widgets/miniMap.d.ts.map +0 -1
  561. package/dist/ui/widgets/miniMap.js +0 -94
  562. package/dist/ui/widgets/miniMap.js.map +0 -1
  563. package/dist/ui/widgets/sparkline.d.ts +0 -17
  564. package/dist/ui/widgets/sparkline.d.ts.map +0 -1
  565. package/dist/ui/widgets/sparkline.js +0 -65
  566. package/dist/ui/widgets/sparkline.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v4/index.ts"],"names":[],"mappings":"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"}
@@ -1,62 +0,0 @@
1
- /**
2
- * V4 Layout Engine - Safe Viewport with Integer Allocation
3
- *
4
- * ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
5
- * DO NOT MODIFY. Development moved to V5.
6
- * See FROZEN.md in v4 directory.
7
- *
8
- * Rule 2: No percent positioning for outer edges - use left+right anchoring
9
- * Rule 3: Integer column width allocation with remainder to center
10
- *
11
- * Uses safe viewport (cols - 1) to prevent overflow.
12
- */
13
- import { type SafeViewport } from '../engine/safeViewport.js';
14
- export type LayoutMode = 'normal' | 'narrow';
15
- /**
16
- * Column layout spec (pixels, integer allocation)
17
- * Rule 3: Integer widths that sum exactly to safeCols
18
- */
19
- export type ColumnSpec = {
20
- left: number;
21
- width: number;
22
- };
23
- /**
24
- * Layout specification (percentage-based)
25
- */
26
- export type LayoutSpec = {
27
- mode: LayoutMode;
28
- columns: {
29
- left: ColumnSpec;
30
- center: ColumnSpec;
31
- right: ColumnSpec;
32
- };
33
- rows: {
34
- mainTop: number;
35
- mainBottom: number;
36
- cmdTop: number;
37
- cmdHeight: number;
38
- };
39
- raw: {
40
- cols: number;
41
- rows: number;
42
- };
43
- };
44
- /**
45
- * Validate layout spec satisfies hard invariant: no widget draws at x >= safeCols
46
- *
47
- * Returns violations array if any panel violates
48
- */
49
- export declare function validateLayoutInvariant(spec: LayoutSpec, safeCols: number, safeRows: number): Array<{
50
- panel: string;
51
- violation: string;
52
- }>;
53
- /**
54
- * Compute layout for given safe viewport
55
- *
56
- * HARD INVARIANT: No widget may draw at x >= safeCols
57
- *
58
- * @param viewport - Safe viewport (from getSafeViewport)
59
- * @returns Layout spec with integer pixel positions (guaranteed to satisfy invariant)
60
- */
61
- export declare function computeLayout(viewport: SafeViewport): LayoutSpec;
62
- //# sourceMappingURL=layoutEngine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layoutEngine.d.ts","sourceRoot":"","sources":["../../../../src/ui/v4/layout/layoutEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,UAAU,CAAC;QACjB,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAsMF;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAoCzI;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU,CAkEhE"}
@@ -1,294 +0,0 @@
1
- /**
2
- * V4 Layout Engine - Safe Viewport with Integer Allocation
3
- *
4
- * ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
5
- * DO NOT MODIFY. Development moved to V5.
6
- * See FROZEN.md in v4 directory.
7
- *
8
- * Rule 2: No percent positioning for outer edges - use left+right anchoring
9
- * Rule 3: Integer column width allocation with remainder to center
10
- *
11
- * Uses safe viewport (cols - 1) to prevent overflow.
12
- */
13
- import { tuiError } from '../runtime/logger.js';
14
- /**
15
- * Mode selection constants
16
- */
17
- const NARROW_THRESHOLD_COLS = 140;
18
- const MIN_ROWS = 28;
19
- /**
20
- * Mode selection (only real "math")
21
- *
22
- * normal if cols >= 140 && rows >= 28
23
- * else narrow
24
- */
25
- function selectMode(cols, rows) {
26
- if (cols >= NARROW_THRESHOLD_COLS && rows >= MIN_ROWS) {
27
- return 'normal';
28
- }
29
- return 'narrow';
30
- }
31
- /**
32
- * Compute normal mode layout (3 columns, integer allocation)
33
- *
34
- * HARD INVARIANT: No widget may draw at x >= safeCols
35
- *
36
- * Blessed borders add:
37
- * - Left border: +1 char on the left
38
- * - Right border: +1 char on the right (if present)
39
- *
40
- * So for a panel with both borders: actualRightEdge = x + w + 2
41
- * For rightmost panel (no right border): actualRightEdge = x + w + 1
42
- *
43
- * Rule: actualRightEdge <= safeCols for ALL panels
44
- */
45
- function computeNormalSpec(safeCols, rows) {
46
- const cmdHeight = 3;
47
- const mainBottom = rows - cmdHeight;
48
- // Border accounting:
49
- // - Left panel: has both borders, so actualRightEdge = left + width + 2
50
- // - Center panel: has both borders, so actualRightEdge = left + width + 2
51
- // - Right panel: has only left border, so actualRightEdge = left + width + 1
52
- const LEFT_BORDER_PAD = 1; // Blessed adds 1 char for left border
53
- const RIGHT_BORDER_PAD = 1; // Blessed adds 1 char for right border (if present)
54
- // CRITICAL FIX: Right panel calculation bug
55
- // If we do: centerW = safeCols - leftW - rightW, then rightLeft = leftW + centerW = safeCols - rightW
56
- // So: rightActualRight = (safeCols - rightW) + rightW + 1 = safeCols + 1 (ALWAYS VIOLATES!)
57
- //
58
- // Solution: We must ensure right panel's right edge accounts for the border BEFORE calculating widths
59
- // Target widths (percentage-based, will be clamped)
60
- const targetLeftW = Math.floor(safeCols * 0.22);
61
- const targetRightW = Math.floor(safeCols * 0.28);
62
- // HARD INVARIANT: Right panel must satisfy: rightLeft + rightW + LEFT_BORDER_PAD <= safeCols
63
- // We need to work backwards: ensure right panel fits, then allocate remaining to left/center
64
- // Strategy: Start with left panel, then center, then ensure right fits
65
- // Left panel constraint: 0 + leftW + 2 (borders) <= safeCols, so leftW <= safeCols - 2
66
- const maxLeftW = safeCols - LEFT_BORDER_PAD - RIGHT_BORDER_PAD;
67
- const finalLeftW = Math.min(targetLeftW, maxLeftW);
68
- const finalLeftLeft = 0;
69
- // Center panel constraint: centerLeft + centerW + 2 (borders) <= safeCols
70
- // But centerLeft = finalLeftW, so: centerW <= safeCols - finalLeftW - 2
71
- const centerLeftPos = finalLeftW;
72
- const maxCenterW = safeCols - centerLeftPos - LEFT_BORDER_PAD - RIGHT_BORDER_PAD;
73
- // Right panel constraint: rightLeft + rightW + 1 (left border only) <= safeCols
74
- // rightLeft = centerLeftPos + centerW
75
- // So: (centerLeftPos + centerW) + rightW + 1 <= safeCols
76
- // Therefore: centerW + rightW <= safeCols - centerLeftPos - 1
77
- // And we want: centerW as large as possible, rightW >= targetRightW
78
- // So: centerW <= safeCols - centerLeftPos - 1 - targetRightW
79
- // Calculate maximum center width that allows right panel to fit
80
- // Right panel needs: rightLeftPos + rightW + 1 <= safeCols
81
- // Where rightLeftPos = centerLeftPos + centerW
82
- // So: (centerLeftPos + centerW) + targetRightW + 1 <= safeCols
83
- // Therefore: centerW <= safeCols - centerLeftPos - targetRightW - 1
84
- const maxCenterWForRight = safeCols - centerLeftPos - targetRightW - LEFT_BORDER_PAD;
85
- const actualMaxCenterW = Math.min(maxCenterW, maxCenterWForRight);
86
- // Target center width (remainder after left, but clamped)
87
- const targetCenterW = safeCols - finalLeftW - targetRightW;
88
- const finalCenterW = Math.max(10, Math.min(targetCenterW, actualMaxCenterW)); // Min 10 for visibility
89
- // Right panel position and width
90
- const rightLeftPos = centerLeftPos + finalCenterW;
91
- // Right panel: rightLeftPos + rightW + 1 <= safeCols
92
- // CRITICAL: We need rightEdge < safeCols, not <=, to prevent scrollbar
93
- // So: rightW <= safeCols - rightLeftPos - LEFT_BORDER_PAD - 1 (extra -1 for safety)
94
- const maxRightW = safeCols - rightLeftPos - LEFT_BORDER_PAD - 1; // Extra -1 to ensure rightEdge < safeCols
95
- const finalRightW = Math.max(10, Math.min(targetRightW, maxRightW)); // Min 10 for visibility
96
- // Ensure widths are reasonable (at least 20 chars for left/right, 30 for center)
97
- // But allow smaller if absolutely necessary (don't force narrow mode unless critically small)
98
- if (finalLeftW < 5 || finalCenterW < 5 || finalRightW < 5) {
99
- // Only force narrow mode if panels are critically small
100
- return computeNarrowSpec(safeCols, rows);
101
- }
102
- // Verify all panels satisfy invariant (STRICT: rightEdge < safeCols, not <=)
103
- const leftActualRight = finalLeftLeft + finalLeftW + LEFT_BORDER_PAD + RIGHT_BORDER_PAD;
104
- const centerActualRight = centerLeftPos + finalCenterW + LEFT_BORDER_PAD + RIGHT_BORDER_PAD;
105
- const rightActualRight = rightLeftPos + finalRightW + LEFT_BORDER_PAD;
106
- // CRITICAL: Must be strictly < safeCols to prevent scrollbar (not <=)
107
- if (leftActualRight >= safeCols || centerActualRight >= safeCols || rightActualRight >= safeCols) {
108
- // Force narrow mode as fallback
109
- return computeNarrowSpec(safeCols, rows);
110
- }
111
- return {
112
- mode: 'normal',
113
- columns: {
114
- left: {
115
- left: finalLeftLeft,
116
- width: finalLeftW,
117
- },
118
- center: {
119
- left: centerLeftPos,
120
- width: finalCenterW,
121
- },
122
- right: {
123
- left: rightLeftPos,
124
- width: finalRightW,
125
- },
126
- },
127
- rows: {
128
- mainTop: 0,
129
- mainBottom,
130
- cmdTop: rows - cmdHeight,
131
- cmdHeight,
132
- },
133
- raw: {
134
- cols: safeCols,
135
- rows: rows,
136
- },
137
- };
138
- }
139
- /**
140
- * Compute narrow mode layout (vertical stack)
141
- *
142
- * HARD INVARIANT: No widget may draw at x >= safeCols
143
- *
144
- * Operations takes full safe width, but must account for borders:
145
- * - Operations has both borders: actualRightEdge = x + w + 2
146
- * - Command line has only left border: actualRightEdge = x + w + 1
147
- */
148
- function computeNarrowSpec(safeCols, rows) {
149
- const cmdHeight = 3;
150
- const mainBottom = rows - cmdHeight;
151
- const LEFT_BORDER_PAD = 1;
152
- const RIGHT_BORDER_PAD = 1;
153
- // Operations panel: has both borders
154
- // CRITICAL: We need rightEdge < safeCols, not <=, to prevent scrollbar
155
- // actualRightEdge = left + width + LEFT_BORDER_PAD + RIGHT_BORDER_PAD < safeCols
156
- // So: width <= safeCols - left - LEFT_BORDER_PAD - RIGHT_BORDER_PAD - 1 (extra -1 for safety)
157
- const maxOperationsW = safeCols - LEFT_BORDER_PAD - RIGHT_BORDER_PAD - 1; // Extra -1 to ensure rightEdge < safeCols
158
- const operationsW = Math.max(1, maxOperationsW);
159
- // Command line: has only left border (no right border)
160
- // Will be handled in renderFrame to ensure it doesn't overflow
161
- return {
162
- mode: 'narrow',
163
- columns: {
164
- left: {
165
- left: 0,
166
- width: 0, // Collapsed in narrow mode
167
- },
168
- center: {
169
- left: 0,
170
- width: operationsW, // Operations takes safe width (accounting for borders)
171
- },
172
- right: {
173
- left: 0,
174
- width: 0, // Collapsed in narrow mode
175
- },
176
- },
177
- rows: {
178
- mainTop: 0,
179
- mainBottom,
180
- cmdTop: rows - cmdHeight,
181
- cmdHeight,
182
- },
183
- raw: {
184
- cols: safeCols,
185
- rows,
186
- },
187
- };
188
- }
189
- /**
190
- * Validate layout spec satisfies hard invariant: no widget draws at x >= safeCols
191
- *
192
- * Returns violations array if any panel violates
193
- */
194
- export function validateLayoutInvariant(spec, safeCols, safeRows) {
195
- const violations = [];
196
- const LEFT_BORDER_PAD = 1;
197
- const RIGHT_BORDER_PAD = 1;
198
- // Check each column (left, center, right panels)
199
- const panels = [
200
- { name: 'left', spec: spec.columns.left, hasRightBorder: true },
201
- { name: 'center', spec: spec.columns.center, hasRightBorder: true },
202
- { name: 'right', spec: spec.columns.right, hasRightBorder: false }, // No right border
203
- ];
204
- for (const panel of panels) {
205
- if (panel.spec.width > 0) {
206
- const rightEdgePadding = LEFT_BORDER_PAD + (panel.hasRightBorder ? RIGHT_BORDER_PAD : 0);
207
- const actualRightEdge = panel.spec.left + panel.spec.width + rightEdgePadding;
208
- if (actualRightEdge > safeCols) {
209
- violations.push({
210
- panel: panel.name,
211
- violation: `rightEdge=${actualRightEdge} > safeCols=${safeCols} (x=${panel.spec.left}, w=${panel.spec.width}, borderPad=${rightEdgePadding})`,
212
- });
213
- }
214
- }
215
- }
216
- // Check command line (handled separately in renderFrame, but check spec)
217
- const cmdRightEdge = safeCols; // Command line uses safeCols - 1 width, left=0, no right border
218
- if (cmdRightEdge > safeCols) {
219
- violations.push({
220
- panel: 'command',
221
- violation: `rightEdge=${cmdRightEdge} > safeCols=${safeCols}`,
222
- });
223
- }
224
- return violations;
225
- }
226
- /**
227
- * Compute layout for given safe viewport
228
- *
229
- * HARD INVARIANT: No widget may draw at x >= safeCols
230
- *
231
- * @param viewport - Safe viewport (from getSafeViewport)
232
- * @returns Layout spec with integer pixel positions (guaranteed to satisfy invariant)
233
- */
234
- export function computeLayout(viewport) {
235
- const { cols: safeCols, rows, rawCols } = viewport;
236
- // Validate minimum size (use rawCols for mode selection)
237
- if (rawCols < 80 || rows < 24) {
238
- // Too small - return minimal layout
239
- return computeNarrowSpec(Math.max(60, safeCols), Math.max(20, rows));
240
- }
241
- // Select mode based on raw columns
242
- const mode = selectMode(rawCols, rows);
243
- // Compute spec based on mode (using safeCols)
244
- let spec;
245
- if (mode === 'normal') {
246
- spec = computeNormalSpec(safeCols, rows);
247
- }
248
- else {
249
- spec = computeNarrowSpec(safeCols, rows);
250
- }
251
- // E) Enforce invariant checks after computing layout
252
- const violations = validateLayoutInvariant(spec, safeCols, rows);
253
- if (violations.length > 0) {
254
- // Log the first offender and refuse to render
255
- const firstViolation = violations[0];
256
- const errorMsg = `[LayoutEngine] INVARIANT VIOLATION: ${firstViolation.panel} - ${firstViolation.violation}`;
257
- // Step 1: Use tuiError for layout violations
258
- tuiError(errorMsg);
259
- tuiError(`[LayoutEngine] Refusing to render to prevent screen corruption.`);
260
- tuiError(`[LayoutEngine] Layout: mode=${spec.mode}, safeCols=${safeCols}, safeRows=${rows}`);
261
- // In debug mode, log all violations
262
- if (process.env.DEBUG_V4 === '1') {
263
- for (const violation of violations) {
264
- tuiError(` - ${violation.panel}: ${violation.violation}`);
265
- }
266
- }
267
- // Return minimal safe layout instead of corrupting screen
268
- return computeNarrowSpec(safeCols, rows);
269
- }
270
- // E) Additional checks: no negative widths/heights
271
- const { columns, rows: layoutRows } = spec;
272
- const checks = [];
273
- // Check column widths
274
- if (columns.left.width < 0)
275
- checks.push(`left.width=${columns.left.width} < 0`);
276
- if (columns.center.width < 0)
277
- checks.push(`center.width=${columns.center.width} < 0`);
278
- if (columns.right.width < 0)
279
- checks.push(`right.width=${columns.right.width} < 0`);
280
- // Check row heights
281
- if (layoutRows.mainBottom - layoutRows.mainTop < 0) {
282
- checks.push(`mainHeight=${layoutRows.mainBottom - layoutRows.mainTop} < 0`);
283
- }
284
- if (layoutRows.cmdHeight < 0)
285
- checks.push(`cmdHeight=${layoutRows.cmdHeight} < 0`);
286
- if (checks.length > 0) {
287
- const errorMsg = `[LayoutEngine] NEGATIVE DIMENSIONS: ${checks.join(', ')}`;
288
- tuiError(errorMsg);
289
- tuiError(`[LayoutEngine] Returning minimal safe layout.`);
290
- return computeNarrowSpec(safeCols, rows);
291
- }
292
- return spec;
293
- }
294
- //# sourceMappingURL=layoutEngine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layoutEngine.js","sourceRoot":"","sources":["../../../../src/ui/v4/layout/layoutEngine.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
3
- * DO NOT MODIFY. Development moved to V5.
4
- * See FROZEN.md in v4 directory.
5
- *
6
- * Step 2: V4 TUI Runtime - Keep-Alive & Terminal Management
7
- *
8
- * Ensures process stays alive in weak terminals (AWS EC2 Instance Connect, etc.)
9
- * and handles proper terminal cleanup on exit.
10
- */
11
- import type { Widgets } from 'neo-blessed';
12
- /**
13
- * Step 2: Clean "TUI Owns stdin" Keep-Alive
14
- *
15
- * Responsibilities:
16
- * - Ensure stdin is resumed and in raw mode when possible
17
- * - Ensure Ctrl+C always exits cleanly via screen.destroy()
18
- * - Keep-alive interval only when needed (browser terminals)
19
- */
20
- export declare function attachTuiRuntime(screen: Widgets.Screen): void;
21
- //# sourceMappingURL=keepAlive.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keepAlive.d.ts","sourceRoot":"","sources":["../../../../src/ui/v4/runtime/keepAlive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAqB3C;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAuH7D"}
@@ -1,149 +0,0 @@
1
- /**
2
- * ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
3
- * DO NOT MODIFY. Development moved to V5.
4
- * See FROZEN.md in v4 directory.
5
- *
6
- * Step 2: V4 TUI Runtime - Keep-Alive & Terminal Management
7
- *
8
- * Ensures process stays alive in weak terminals (AWS EC2 Instance Connect, etc.)
9
- * and handles proper terminal cleanup on exit.
10
- */
11
- import { tuiDebug, tuiError } from './logger.js';
12
- /**
13
- * Detect if we're in a browser terminal (AWS CloudShell, EC2 Instance Connect, etc.)
14
- */
15
- function isBrowserTerminal() {
16
- // Check explicit flag
17
- if (process.env.TUI_BROWSER === '1') {
18
- return true;
19
- }
20
- // Auto-detect browser terminals
21
- const term = process.env.TERM || '';
22
- const hasSSH = process.env.SSH_CONNECTION !== undefined;
23
- const hasAWS = process.env.AWS_EXECUTION_ENV !== undefined;
24
- const isCloudShell = /cloudshell|web|browser/i.test(term) || hasSSH || hasAWS;
25
- return isCloudShell;
26
- }
27
- /**
28
- * Step 2: Clean "TUI Owns stdin" Keep-Alive
29
- *
30
- * Responsibilities:
31
- * - Ensure stdin is resumed and in raw mode when possible
32
- * - Ensure Ctrl+C always exits cleanly via screen.destroy()
33
- * - Keep-alive interval only when needed (browser terminals)
34
- */
35
- export function attachTuiRuntime(screen) {
36
- tuiDebug('Attaching TUI runtime...');
37
- // 1) Always resume stdin (keeps event loop alive)
38
- process.stdin.resume();
39
- // 2) Ensure raw mode so keypresses actually arrive
40
- try {
41
- if (process.stdin.isTTY && typeof process.stdin.setRawMode === 'function') {
42
- process.stdin.setRawMode(true);
43
- tuiDebug('stdin set to raw mode');
44
- }
45
- }
46
- catch (err) {
47
- tuiError('Failed to set raw mode:', err);
48
- }
49
- // 3) Always handle Ctrl+C inside blessed (clean exit)
50
- screen.key(['C-c'], () => {
51
- tuiDebug('Ctrl+C pressed - exiting cleanly');
52
- try {
53
- const interval = screen.__keepAliveInterval;
54
- if (interval) {
55
- clearInterval(interval);
56
- }
57
- // Step 6: Clean exit - restore terminal
58
- try {
59
- screen.program?.showCursor();
60
- }
61
- catch {
62
- // Ignore
63
- }
64
- screen.destroy();
65
- }
66
- catch (err) {
67
- tuiError('Error during cleanup:', err);
68
- }
69
- process.exit(0);
70
- });
71
- // 4) Keep-alive interval ONLY when needed (browser terminals)
72
- const needsKeepAlive = isBrowserTerminal();
73
- if (needsKeepAlive) {
74
- tuiDebug('Browser terminal detected - enabling keep-alive interval');
75
- // CRITICAL: Use a shorter interval (10s) and ensure it's not unref'd
76
- // This keeps the event loop alive in browser terminals where stdin might not hold it
77
- const interval = setInterval(() => {
78
- // Heartbeat to keep event loop alive in browser terminals
79
- // This ensures process doesn't exit even if stdin isn't holding it
80
- tuiDebug('Keep-alive heartbeat'); // Log to file to verify it's running
81
- }, 10_000); // Every 10 seconds (faster for better reliability)
82
- // CRITICAL: DO NOT call interval.unref() - we need this to block exit
83
- // Store interval handle on screen so it can be cleared on destroy
84
- screen.__keepAliveInterval = interval;
85
- }
86
- else {
87
- tuiDebug('Normal terminal - keep-alive interval not needed');
88
- }
89
- // 5) CRITICAL: Ensure blessed screen has stdin listeners active
90
- // In browser terminals, blessed might not properly attach stdin listeners
91
- // Force a dummy listener if needed to keep stdin active
92
- if (needsKeepAlive && process.stdin.listeners('data').length === 0) {
93
- tuiDebug('No stdin listeners detected - adding keep-alive listener');
94
- process.stdin.on('data', (data) => {
95
- // Blessed should handle actual input, but we need to keep stdin active
96
- // Don't interfere with blessed's input handling
97
- });
98
- }
99
- // 5) Ensure stdin has listeners (blessed should handle this, but ensure it does)
100
- if (process.stdin.listeners('data').length === 0) {
101
- // Blessed should attach listeners, but if it doesn't, we'll at least have stdin open
102
- process.stdin.on('data', () => {
103
- // Blessed handles the actual input, we just need to keep stdin active
104
- });
105
- }
106
- // 6) Handle other exit signals
107
- const cleanup = () => {
108
- try {
109
- const interval = screen.__keepAliveInterval;
110
- if (interval) {
111
- clearInterval(interval);
112
- }
113
- // Deliverable 4: Terminal recovery on exit
114
- try {
115
- screen.program?.showCursor();
116
- }
117
- catch {
118
- // Ignore
119
- }
120
- try {
121
- screen.destroy();
122
- }
123
- catch {
124
- // Ignore
125
- }
126
- }
127
- catch {
128
- // Ignore cleanup errors
129
- }
130
- };
131
- process.on('SIGINT', cleanup);
132
- process.on('SIGTERM', cleanup);
133
- // Handle uncaught exceptions
134
- process.on('uncaughtException', (error) => {
135
- // Log to stderr (not stdout - it will corrupt the terminal)
136
- process.stderr.write(`\n[V4 FATAL ERROR] ${error.message}\n`);
137
- if (error.stack) {
138
- process.stderr.write(`Stack: ${error.stack.split('\n').slice(0, 5).join('\n')}\n`);
139
- }
140
- cleanup();
141
- process.exit(1);
142
- });
143
- process.on('unhandledRejection', (reason) => {
144
- process.stderr.write(`\n[V4 UNHANDLED REJECTION] ${reason}\n`);
145
- cleanup();
146
- process.exit(1);
147
- });
148
- }
149
- //# sourceMappingURL=keepAlive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keepAlive.js","sourceRoot":"","sources":["../../../../src/ui/v4/runtime/keepAlive.ts"],"names":[],"mappings":"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"}